我有一个TreeView控件,它显示两件事:
1) Folder
2) Item
文件夹包含项目。根文件夹包含所有子文件夹以及不属于文件夹的项目。
我有一个Folder
类型与表示文件夹的节点相关联,Item
类型与表示项目的节点相关联。
现在,用户可以选择任何节点,并执行不同的操作。我需要能够区分存储在Tag属性中的类型。如果这是不可能的,我可以选择解决这个问题吗?
答案 0 :(得分:2)
使用'as'和'is'运算符? e.g。
if(node.Tag is Folder)
{
Folder f = node.Tag as Folder;
}
else if (node.Tag is Item)
{
...
}
答案 1 :(得分:2)
如果需要,您可以轻松制作打字标签:
public class MyTreeNode<T> : TreeNode
{
public T TypedTag { get; set; }
}