将子节点添加到树视图 [英] add child node to a treeview

查看:78
本文介绍了将子节点添加到树视图的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

你好,

我有一个树状视图.与此相似;


-儿童1
-孩子1的孩子a
-孩子1的孩子b

我正在从文本框中添加子项a和子项b,但它只是继续在子项1下添加值.相反,我想将它们添加到新节点上.我该怎么办?

喜欢;

Hello,

I have a treeview. It is similar to this;

Root
-Child 1
-Child a of Child 1
-Child b of Child 1

I am adding the child a and child b from textboxes but it just keeps adding the values under of the child 1. Instead I want to add them on a new node. How can I do this?

Like;

Root
    -Child 1
       -Child a of Child 1
       -Child b of Child 1
    -Child 2
       -Child a of Child 2
       -Child b of Child 2
    -Child 3
       -Child a of Child 3
       -Child b of Child 3

推荐答案

我可以在另一个例子中添加一些KISS(保持简单和愚蠢):

如果您已经拥有treeView或刚刚创建了它的实例:
让我们填充一些数据-例如一位父母两个孩子:
May i add another example some KISS (Keep It Simple & Stupid):

If you already have a treeView or just created an instance of it:
Let''s populate with some data - Ex. One parent two child''s :
treeView1.Nodes.Add("ParentKey","Parent Text");
treeView1.Nodes["ParentKey"].Nodes.Add("Child-1 Text");
treeView1.Nodes["ParentKey"].Nodes.Add("Child-2 Text");



另一个例子两个父母的第一个孩子有两个孩子,第二个一个孩子:



Another Ex. two parent''s first have two child''s second one child:

treeView1.Nodes.Add("ParentKey1","Parent-1  Text");
treeView1.Nodes.Add("ParentKey2","Parent-2 Text");
treeView1.Nodes["ParentKey1"].Nodes.Add("Child-1 Text");
treeView1.Nodes["ParentKey1"].Nodes.Add("Child-2 Text");
treeView1.Nodes["ParentKey2"].Nodes.Add("Child-3 Text");


如果走得更远-孩子2的子孩子:


Take if farther - sub child of child 2:

treeView1.Nodes.Add("ParentKey1","Parent-1  Text");
treeView1.Nodes["ParentKey1"].Nodes.Add("Child-1 Text");
treeView1.Nodes["ParentKey1"].Nodes.Add("ChildKey2","Child-2 Text");
treeView1.Nodes["ParentKey1"].Nodes["ChildKey2"].Nodes.Add("Child-3 Text");



如您所见,您可以根据需要拥有任意数量的子代和父代,而这些子代可以有子代的子代,依此类推....
希望我能帮忙!



As you see you can have as many child''s and parent''s as you want and those can have sub child''s of child''s and so on....
Hope i help!


您最有可能做的是未指定要将子代添加到的节点.这是我为您制作的一个简短示例.

What you are most likely doing is not specifing the node you want to add the children to. Here is a quick little example I made for you.

TreeNode thisNode;

thisNode = treeView1.Nodes.Add("First Parent");
thisNode.Nodes.AddRange(new TreeNode[]
{
    new TreeNode("Test"),
    new TreeNode("Test #2"),
    new TreeNode("Test #3")
});

thisNode = treeView1.Nodes.Add("Second Parent");
thisNode.Nodes.AddRange(new TreeNode[]
{
    new TreeNode("Test"),
    new TreeNode("Test #2"),
    new TreeNode("Test #3")
});



第一条语句只是声明了一个变量.
第二个对象为该变量分配一个新的 TreeNode 对象.
第三个将一堆 TreeNode 对象添加到该变量,这些对象将是它的子级.



The first statement simply declares a variable.
The second assigns a new TreeNode object to that variable.
The third adds a bunch of TreeNode objects to the variable, these would be its children.


这篇关于将子节点添加到树视图的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆