foreach(treenode node in treeview.nodes) { loop(node); }private void Loop(treenode subNode) { foreach(treenode node in subNode.nodes) { loop(Node); } }
用递归, public void VisiteTree( TreeNodeCollection nodes ) { foreach(TreeNode node in nodes) { // // do your operation here with node // VisiteTree( node.Nodes ); } }调用 VisiteTree( this.treeView1.Nodes )
public void BeginRoundTree(TreeView tree) { int TreeChildNum = tree.Nodes.Count; int i; for(i=0;i<TreeChildNum;i++) { //Response.Write(tree.Nodes[i].Text+"<br>"); NodeAction(tree.Nodes[i]); RoundTree(tree.Nodes[i]); } } //便历树(二) public void RoundTree(TreeNode treenode) { int childnum = treenode.Nodes.Count; int i,j; for(i=0;i<childnum;i++) { if(treenode.Nodes[i].Nodes.Count>0) { NodeAction(treenode.Nodes[i]); RoundTree(treenode.Nodes[i]); } else { NodeAction(treenode.Nodes[i]); //Response.Write(treenode.Nodes[i].Text+"<br>"); } } }
foreach(treenode node in treeview.nodes)
{
loop(node);
}private void Loop(treenode subNode)
{
foreach(treenode node in subNode.nodes)
{
loop(Node);
}
}
public void VisiteTree( TreeNodeCollection nodes )
{
foreach(TreeNode node in nodes)
{
//
// do your operation here with node
//
VisiteTree( node.Nodes );
}
}调用
VisiteTree( this.treeView1.Nodes )
{
int TreeChildNum = tree.Nodes.Count;
int i;
for(i=0;i<TreeChildNum;i++)
{
//Response.Write(tree.Nodes[i].Text+"<br>");
NodeAction(tree.Nodes[i]);
RoundTree(tree.Nodes[i]);
}
} //便历树(二)
public void RoundTree(TreeNode treenode)
{
int childnum = treenode.Nodes.Count;
int i,j;
for(i=0;i<childnum;i++)
{ if(treenode.Nodes[i].Nodes.Count>0)
{
NodeAction(treenode.Nodes[i]);
RoundTree(treenode.Nodes[i]); }
else
{
NodeAction(treenode.Nodes[i]);
//Response.Write(treenode.Nodes[i].Text+"<br>");
} }
}
traverse( TreeNode tnRoot)
{
//这里写你想对每一个结点执行的操作
foreach( TreeNode tnTmp in tnRoot.Nodes )
{
traverse( tnTmp );
}
}
广度遍历:
traverse( TreeNode tnRoot)
{
foreach( TreeNode tnTmp in tnRoot.Nodes )
{
//这里写你想对每一个结点执行的操作
}
foreach( TreeNode tnTmp in tnRoot.Nodes )
{
traverse( tnTmp );
}
}注意:广度遍历没有处理根结点自身,即传进去的那个根结点没有被遍历到,但它的子结点一个不漏。
写的不错啊。
简洁。