【发布时间】:2013-10-26 15:58:53
【问题描述】:
所以,这就是代码,我希望 treeView1.Nodes 包含 TreeNodes 和 XmlNodes,特别是像上面的代码一样存储此类对象:
public class Node : TreeNode
{
public XmlNode node{ set; get; }
public Node(XmlNode node):base(){
this.node = node;
base.Text = node.Name;
}
public void delete()
{
node.RemoveAll();
node = null;
base.Remove();
}
}
private void populate(XmlNodeList nodes, TreeNodeCollection tree)
{
if (nodes != null)
{
foreach (XmlNode child in nodes)
{
int index = tree.Add(new Node(child));
if (child.ChildNodes != null)
{
populate(child.ChildNodes, tree[index].Nodes );
}
}
}
}
现在我意识到构造的 Node 对象仍然被存储为 TreeNode,我怎样才能使上面的行成为可能?
Node selected = treeView1.SelectedNode;
selected.delete();
【问题讨论】:
-
如果您知道它始终是
Node,只需将其转换为该名称即可。