Я пытаюсь скопировать все дерево (точно все узлы) из дерева (полностью) на другое обзор, используя этот код: < /p>
TreeNodeCollection myTreeNodeCollection = treeView1.Nodes;
TreeNode[] myTreeNodeArray = new TreeNode[treeView1.Nodes.Count];
treeView1.Nodes.CopyTo(myTreeNodeArray, 0);
treeView2.Nodes.AddRange(myTreeNodeArray);
< /code>
Но это не позволяет мне сделать это, он просит либо удалить узлы в исходном дереве, либо использовать его клон! Как я могу это сделать? Я не хочу, чтобы мой исходный дерево потерял что -либо в этом процессе. < /p>
** Обновление **
ok, ребята, я нашел сложный код (для меня !!) Но как я могу это использовать? < /p>
public static T DeepTreeCopy(T obj)
{
object result = null;
using (var ms = new MemoryStream())
{
var formatter = new BinaryFormatter();
formatter.Serialize(ms, obj);
ms.Position = 0;
result = (T)formatter.Deserialize(ms); ms.Close();
}
return (T)result;
}
Подробнее здесь: https://stackoverflow.com/questions/561 ... p-winforms