Accessing all the nodes in TreeView Control

前端 未结 7 1591
小蘑菇
小蘑菇 2020-11-27 22:27

I have a TreeView Control with set of nodes and child nodes. For example:

ROOT has A,B,C.

A has a1, a2, a3 and then

7条回答
  •  隐瞒了意图╮
    2020-11-27 23:00

    You can use Queue like what i had done in my application :

    List nodes = new List();
    Queue queue = new Queue();
    
    //
    // first insert all the root nodes into the queue.
    //
    foreach(TreeNode root in tree.Nodes) {
        queue.Enqueue(root);
    }
    
    while(queue.Count > 0) {
        TreeNode node = queue.Dequeue();
        if(node != null) {
            //
            // Add the node to the list of nodes.
            //
            nodes.Add(node);
    
            if(node.Nodes != null && node.Nodes.Count > 0) {
                //
                // Enqueue the child nodes.
                //
                foreach(TreeNode child in node.Nodes) {
                    queue.Enqueue(child);
                }
            }
        }
    }
    

提交回复
热议问题