将子项添加到现有的treenode

问题描述:

我想检查treenode是否存在,如果存在,则将子项添加到该现有的TreeNode。将子项添加到现有的treenode

假设我有一个TreeNode treeroot和一个child treechild1。我创建了treenode,如下所示:

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

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

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

+0

不'TreeNode'有其他方法吗? – dasblinkenlight 2011-12-24 12:19:21

+0

不。我想检查一个节点是否已经创建或没有? – 2011-12-24 12:22:09

+0

可能的重复[如何确定所选节点是否是TreeView中的子节点或父节点?](http://stackoverflow.com/questions/5684781/how-can-i-determine-if-the-selected- node-is-a-child-or-parent-node-in-treeview) – 2011-12-24 12:25:49

您可以尝试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