treeview控件实用详解 treeview获取当前点击的节点

使用Treeview控件时,通常需要遍历它的所有节点。Treeview控件本身没有这个功能。这里我们用递归的方法实现GetAllNodes()函数来获取根下的所有节点。返回值是节点列表,函数是

本文最后更新时间:  2023-03-23 00:36:42

使用Treeview控件时,通常需要遍历它的所有节点。Treeview控件本身没有这个功能。这里我们用递归的方法实现GetAllNodes()函数来获取根下的所有节点。返回值是节点列表,函数是静态的。

我们可以将这两个函数添加到Treeview tree的类中,称为扩展类函数。

这里表示扩展类的主体。一个是Treeview,获取整个树中所有节点的列表,另一个是node,获取这个节点下所有节点的列表。

public static class TreeViewExtensions{ public static List<TreeNode> GetAllNodes(this TreeView tv) { List<TreeNode> result = new List<TreeNode>(); foreach (TreeNode child in tv.Nodes) { result.AddRange(child.GetAllNodes()); } return result; } public static List<TreeNode> GetAllNodes(this TreeNode node) { List<TreeNode> result = new List<TreeNode>(); result.Add(node); foreach (TreeNode child in node.Nodes) { result.AddRange(child.GetAllNodes()); } return result; }}

示例,直接调用

树形视图。GetAllNodes();

获取树中的所有节点。

温馨提示:内容均由网友自行发布提供,仅用于学习交流,如有版权问题,请联系我们。