将子项添加到现有的treenode

时间:2011-12-24 12:17:21

标签: c# .net

我想检查treenode是否存在以及是否存在然后将child添加到现有的TreeNode。

假设我有一个TreeNode treeroot和一个子treechild1。我已经创建了这样的treenode:

TreeNode[] tchild = new TreeNode[] {"childe1"};

TreeNode troot = new TreeNode("treeroot",tchild);

现在我想检查是否创建了treeroot。如果已创建,那么我想在检查后获得的另一个子节点添加到该节点。我怎样才能做到这一点?

1 个答案:

答案 0 :(得分:6)

您可以尝试使用Nodes.Find("key",bool searchAllChildren)方法。要使用此方法,您必须添加键值tree node

例如,

//Add First node
TreeView1.Nodes.Add("Root","Root"); 

并定义搜索和添加节点的方法

public void SearchAndAdd(string searchKey, string newValue)
 {
  TreeNode[] list = treeView1.Nodes.Find(searchKey, true);
  if (list.Length != 0)
   {
    list[0].Nodes.Add(newValue,newValue);
   }
 }

调用SearchAndAdd方法在给定密钥处添加节点

SearchAndAdd("Root","First");  //added under Root
SearchAndAdd("Root","Second"); // do
SearchAndAdd("Second","2");    // added at Second