zoukankan      html  css  js  c++  java
  • .net中TreeView使用方法小结(1)

    在新项目的开发中,TreeView的作用很重要,这两天好好的学习了一下treeview的使用方法。

    这篇文章主要关注TreeView带有CheckBox的情况。

    在TreeView中点击CheckBox触发的函数如下:

            private void treeView1_AfterCheck(object sender, TreeViewEventArgs e)
            {
    
            }
     

    在这个事件中选中,或者取消的那一个节点为:

    TreeNode node = e.Node;

    使用TreeView控件要经常使用到递归算法。下面举两个例子:

    窗体如下:

    image

    • 选中父节点,则子节点也全部选中
            private void treeView1_AfterCheck(object sender, TreeViewEventArgs e)
            {
                TreeNode node = e.Node;
                if (node.Checked)
                {
                    SetChildNodesState(e.Node);
                }
            }
    
            private void SetChildNodesState(TreeNode ParentNode)
            {
                if (ParentNode.Nodes != null)
                {
                    foreach (TreeNode node in ParentNode.Nodes)
                    {
                        node.Checked = true;
                        SetChildNodesState(node);
                    }
                }
            }
    • 取消选中子节点,则父节点也取消选中
           private void treeView1_AfterCheck(object sender, TreeViewEventArgs e)
            {
    
                TreeNode node = e.Node;
    
                if (node.Checked == false)
                {
                    SetParentNodeState(e.Node);
                }
            }
    
     
    
            private void SetParentNodeState(TreeNode ChildNode)
            {
                if (ChildNode.Parent != null)
                {
                    ChildNode.Parent.Checked = false;
                    SetParentNodeState(ChildNode.Parent);
                }
            }

    未完待续
  • 相关阅读:
    Word添加论文引用标注
    从入门示例看ns2脚本的基本结构
    Linux下Socket编程
    c++中的枚举类型
    运算符重载的规则
    标志位处理
    mfc中从类名获取类运行时信息
    用自定义类声明全局变量的一种快捷方式
    基类的析构函数声明为virtual比较安全
    VC常用数据类型使用转换详解(摘)
  • 原文地址:https://www.cnblogs.com/blackcatcjy/p/3873751.html
Copyright © 2011-2022 走看看