Reputation: 105
I'm trying to copy a treeview nodes to treenodecollection for some other processing. When i execute the treeview.nodes.clear()
in the next line, my treenodecollection is becoming null. Can you please tell me how to copy the treeview nodes to treenodecollection and keep the copies of the nodes even after calling Clear method of actual tree view nodes?
TreeNodeCollection tnc = null;
private TypeIn()
{
tnc = treeView1.Nodes;
treeView1.Nodes.Clear();
//Now my tnc becomes null, but I want the tnc for future use.
}
Upvotes: 7
Views: 8255
Reputation: 595
TreeNode object is clonable with all subtree entire. Thats why you can use List which will contain root nodes with there subtrees.
List<TreeNode> tnc = null;
private TypeIn()
{
tnc = new List<TreeNode>();
foreach (TreeNode n in treeView1.Nodes)
{
tnc.Add((TreeNode)n.Clone());
}
treeView1.Nodes.Clear();
}
Upvotes: 4