C# 为什么treeView的节点标记为空?

C# 为什么treeView的节点标记为空?,c#,.net,winforms,treeview,C#,.net,Winforms,Treeview,我有以下代码: public void RemoveDirectoriesRecursive(TreeNode ParentNode, string path) { if (ParentNode.GetNodeCount(true) >= 0) { foreach (TreeNode subnode in ParentNode.Nodes) { string ss = (string)subnode.Tag;

我有以下代码:

public void RemoveDirectoriesRecursive(TreeNode ParentNode, string path)
{
    if (ParentNode.GetNodeCount(true) >= 0)
    {
        foreach (TreeNode subnode in ParentNode.Nodes)
        {
            string ss = (string)subnode.Tag;
            if (subnode.Tag != null)
            {
                if (ss.Equals("file"))
                {
                    DeleteFile(path + "\\" + subnode.Text, false);
                }
            }
            else
            {
                RemoveDirectoriesRecursive(subnode, path + "\\" + subnode.Text);
            }

        }
    }
    RemoveDirectory(path, true);
}
由于子节点是目录,因此变量ss第一次为null。 但是第二次子节点包含一个文件名:TreeNode:lightning1.jpg

但同样地,ss是空的。由于某些原因,subnode.Tag标记为空。
为什么标签是空的?我在这里遗漏了什么?

标签属性应该在使用之前分配。

创建节点时是否设置了
标签
属性?确定没有查找
文本
?为什么
标记
不为
?你放东西进去了吗?听起来你需要一步一步地检查代码。。你至少做到了吗..或者你只是编码然后去。。