日期:2014-05-18  浏览次数:20864 次

TreeView中clone的问题
写代码时需要将窗体mainForm中TreeView 的节点A 中的所有子节点拷贝的窗体this的treeview控件中,于是在窗体this_Load事件中用了下面的代码来循环添加:
this.treeView.Nodes.Add((TreeNode)mainForm.treeVw.Nodes[nodesIndex].Nodes[i].Clone());

显示上正常,但是有一个很诡异的情况,如果你选中mainForm节点A中的子节点并右击使用右键菜单(mainForm中TreeView有右键菜单),那么弹出this窗体后,clone过去的节点上也会有右键菜单。如果不在mainForm中使用右键,this中的Treeview中就没有右键菜单。
不知道什么原因,求解。

------解决方案--------------------
大约是连处理事件的委托一块复制了