C# 在TreeView C中仅查找子节点#
我有下面的树C# 在TreeView C中仅查找子节点#,c#,winforms,treeview,C#,Winforms,Treeview,我有下面的树 A +-B +-C | +-D | +-E +-F +-G +-H 我正试图找到B,D,E,G,H。 排除具有树的节点,只保留其子节点。您可以在树节点列表中递归收集子节点: List<TreeNode> children = new List<TreeNode>(); foreach(TreeNode node in TV.Nodes) collectChildren(node); void collectChildren(TreeN
A
+-B
+-C
| +-D
| +-E
+-F
+-G
+-H
我正试图找到B,D,E,G,H
。
排除具有树的节点,只保留其子节点。您可以在树节点列表中递归收集子节点:
List<TreeNode> children = new List<TreeNode>();
foreach(TreeNode node in TV.Nodes) collectChildren(node);
void collectChildren(TreeNode node)
{
if (node.Nodes.Count == 0) children.Add(node)
else foreach(TreeNode n in node.Nodes) collectChildren(n);
}
List children=new List();
foreach(TV.Nodes中的TreeNode节点)收集子节点(node);
无效子节点(TreeNode节点)
{
如果(node.Nodes.Count==0)子项。添加(node)
else foreach(node.Nodes中的树节点n)收集子节点(n);
}