本帖最后由 hdmi1080a 于 2014-01-22 17:42:06 编辑

解决方案 »

  1.   

    private void treeView1_AfterLabelEdit(object sender, NodeLabelEditEventArgs e)
            {
                if (bRollback)//如果是回滚操作引发此事件,不进行处理
                {
                    bRollback = false;
                    return;
                }
                string strNewLable = e.Label;
                TreeNodeCollection nodes = treeView1.Nodes;
                for (int i = 0; i < nodes.Count; i++)
                {
                    if (strNewLable == nodes[i].Text && nodes[i] != nodeCurrentSelect)
                    {
                        MessageBox.Show(string.Format(" 标签'{0:d}'已经被其他节点使用!", strNewLable));
                        e.CancelEdit = true; 只要这句就可以了
                        return;
                    }
                }
            }