RT:
我在窗口中添加了两个TreeView,实现功能:在B  Treeview中双击节点后,在A Treeview中自动添加进去。但是我不想重复添加,如何实现,在线等,各位一边吃饭一边回答谢谢了

解决方案 »

  1.   

    可以判断一下吗? 判断添加的节点 在A Treeview中添加的位置 是否有相同
      
      

  2.   

    遍历判断Treeview中是否存在
      

  3.   

    就是判断的语句怎么写?if (layersTree.Nodes.Contains(e.node.tag))  好像不对··
      

  4.   

    这个layersTree就是A Treeview ,e.node.tag是双击事件获取的节点
      

  5.   

    可以通过:
     treeView1.Nodes.Add("key1", "text1");
     treeView1.Nodes.Add("key2", "text2");
     bool result = treeView1.Nodes.ContainsKey("key1");
     MessageBox.Show(result.ToString());
    来treeview1判断是否存在treeview2的节点
      

  6.   

    完整的代码:        private void treeView1_NodeMouseDoubleClick(object sender, TreeNodeMouseClickEventArgs e)
            {
                bool notFind = true;
                //一个都没有的情况下,直接添加
                if (treeView2.Nodes.Count == 0)
                {
                    treeView2.Nodes.Add((TreeNode)e.Node.Clone());
                    return;
                }
                else
                {
                    foreach (TreeNode tn in treeView2.Nodes)
                    {
                        if (tn.Text == e.Node.Text)
                        {
                            notFind = false;
                            MessageBox.Show("已经存在对应节点,不能重复添加!");
                            return;
                        }
                    }
                    if(notFind)
                        treeView2.Nodes.Add((TreeNode)e.Node.Clone()); 
                }
            }