首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >当父节点被选中或被取消选中时,如何自动选中或取消选中所有下级节点?

当父节点被选中或被取消选中时,如何自动选中或取消选中所有下级节点?
EN

Stack Overflow用户
提问于 2011-04-21 14:52:04
回答 10查看 41.4K关注 0票数 6

我在Windows Forms Application.How中有一个带复选框的树形视图控件,每当它的父节点被选中或取消选中时,它都可以自动选择或取消选择所有子节点。

EN

回答 10

Stack Overflow用户

回答已采纳

发布于 2011-04-21 14:55:43

如果我没记错的话,AfterCheck事件的文档中的示例代码完全符合您的要求。

票数 13
EN

Stack Overflow用户

发布于 2011-04-21 15:02:06

代码语言:javascript
运行
复制
    private void HandleOnTreeViewAfterCheck(Object sender,
       TreeViewEventArgs e)
    {
        CheckTreeViewNode(e.Node, e.Node.Checked);
    }

    private void CheckTreeViewNode(TreeNode node, Boolean isChecked)
    {
        foreach (TreeNode item in node.Nodes)
        {
            item.Checked = isChecked;

            if (item.Nodes.Count > 0)
            {
                this.CheckTreeViewNode(item, isChecked);
            }
        }
    }
票数 14
EN

Stack Overflow用户

发布于 2011-04-21 15:15:19

代码语言:javascript
运行
复制
            //TreeView - myTreeview;
            myTreeview.BeginUpdate();
            //Loop through all the nodes of tree
            foreach (TreeNode node in myTreeview.Nodes)
            {
                //If node has child nodes
                if (HasChildNodes(node))
                {
                    if (node.Checked == true)
                    {
                        //Check all the child nodes.
                        foreach (TreeNode childNode in node.Nodes)
                        {
                            childNode.Checked = true;
                        }
                    }
                }
            }
            myTreeview.EndUpdate();

Hope this helps....
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5740585

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档