日期:2014-05-19  浏览次数:21055 次

如何遍历treeview中某个节点的子节点
如何遍历treeview中某个节点的子节点

------解决方案--------------------
foreach(TreeNode node in aNode.Nodes)
{
//...
}
------解决方案--------------------
只遍历子节点
foreach(TreeNode n in someTreeNode.ChildNodes) {
string nodeText = n.Text;
// more code
}

递归遍历 Tree,结构一般如下

void TravelTree(TreeView tree)
{
// some codes
// ...

TravelTreeRecursive(tree.Nodes);

// some codes
// ...


}

void TravelTreeRecursive(TreeNodeCollection nodes)
{
foreach(TreeNode n in nodes) {
string nodeText = n.Text;
// more codes
// ...
TravelTreeRecursive(n.ChildNodes);
}
}
------解决方案--------------------
二楼的递归方法是对的,楼主把someTreeNode.ChildNodes改称someTreeNode.Nodes
------解决方案--------------------
TreeNode node1 = TreeView.selectedNodes.Nodes[0];

if(node1 != null)
{
foreach(TreeNode node2 in node1.Nodes)
{
Code...
.......
}
}