0

这是否可以将 Treeview 控件的节点命名为 Matrix 之类的?

例如:

Parent Node
   --> Child Node
       --> Grand child node
Other Parent Node

像这样的东西

-- Node1
   --> Node11
       --> Node111
       --> Node112
         --> Node1121
   --> Node12
   --> Node13
-- Node2

我通过按钮单击添加节点和子节点btnAddNodebtnAddChildNode
现在我只是增加一个计数器值,它没有捕捉到节点是子节点还是父节点(只是递增

4

2 回答 2

2

最简单的解决方案是使用这两种简单的方法。首先是将 TreeNodes 添加到 TreeView 控件,然后将子节点添加到已添加的节点。

public void AddNode(TreeView parent, string text)
{
    if (parent != null)
    {
         parent.Nodes.Add(new TreeNode(text + (parent.Nodes.Count + 1).ToString()));
    }
}
public void AddChildNode(TreeNode parent)
{
    if(parent != null)
    {
         string number = parent.Text;
         parent.Nodes.Add(new TreeNode(number + (parent.Nodes.Count + 1).ToString()));   
    }
}

要检查它是否正常工作,您可以执行以下操作:

AddNode(treeView1, "Node");
AddNode(treeView1, "Node");
AddNode(treeView1, "Node");
AddChildNode(treeView1.Nodes[0]);
AddChildNode(treeView1.Nodes[0]);
AddChildNode(treeView1.Nodes[0]);
AddChildNode(treeView1.Nodes[1]);
AddChildNode(treeView1.Nodes[2]);
AddChildNode(treeView1.Nodes[2]);
于 2012-10-30T11:14:31.600 回答
0

btnAddNode 和 btnAddChildNode 有什么区别?根节点是否使用 btnAddNode 添加,所有其他子节点是否使用 btnAddChildNode 添加?

原则上,您可以使用以下代码来查找要添加的节点的深度。

   counter = 0 ; 
   while (node.Parent != null)
   {
       node = node.Parent;
       counter++;
   }
于 2012-10-30T11:13:45.830 回答