【问题标题】:Untick parent node when untick child node in tree view在树视图中取消勾选子节点时取消勾选父节点
【发布时间】:2014-05-20 05:32:00
【问题描述】:

我有一个树视图,它有父节点和子节点。 检查父节点时,我正在使用此代码检查所有子节点。

 foreach (TreeNode node in treeNode.Nodes)
            {
                node.Checked = nodeChecked;
                if (node.Nodes.Count > 0)
                {                   
                    this.CheckAllChildNodes(node, nodeChecked);
                }
            }

现在我想要的是,取消选中子节点时;我需要取消选中父节点。 我怎样才能做到这一点? 我必须使用哪个事件?

我正在使用 C# Windows 应用程序。

【问题讨论】:

    标签: c# treeview


    【解决方案1】:

    你可以使用下面提到的方法

    private void UncheckParentNodes(TreeNodeCollection node)
    {
        foreach (TreeNode n in node)
        {
            if (n.Parent == null && n.Nodes.Count == 0)
                n.Checked = false;
        }
    }
    

    【讨论】:

    • 如果我这样调用你的方法,就会出错。取消选中父节点(e.Node);那么我该如何调用该方法呢?
    • 该方法接受TreeNodeCollection 类型的参数,因此您必须给它一个节点集合。使用e.Node.Nodes
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多