如果已经知道树节点的text和value 它们的值为str1,str1或str1,str2
怎么不用循环来查找树的节点,然后把它删除。我试过了用treenode delnode=new treenode(str1,str2);
treeview1.nodes[index].childnodes.remove(delnode);不能删除,只能用循环来查找要删除的节点,然后才能删除.

解决方案 »

  1.   

    1楼的请注意,并不是因为MicroSoft把它封装的太好你才删除不掉的。下面的代码就可以成功删除掉指定的节点的:    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Dim node As System.Windows.Forms.TreeNode
            node = TreeView1.Nodes.Item(3) //这里面我随便做了一个树,随便找了一个节点。
            TreeView1.Nodes.Remove(node)
        End Sub
    那你为什么删除不掉呢?看你的代码:treenode delnode=new treenode(str1,str2); 
    这个对象是你New出来的新对象,他的Value和Text只不过和你认为的那个Node是一样的,但是,他们并不是一样的东西。所以,肯定删除不掉。如果能删除掉,那才是MicroSoft的失误呢!PS:
        请认真研读面向对象的思想........   :)