zoukankan      html  css  js  c++  java
  • 树节点

    private void zimulu(TreeNode node)//在点开节点的一瞬间,解析当前目录的第三级目录
            {
                try//对错误或者权限不作处理
                {
                    //根据获得的完整目录得到该目录下的子目录
                    foreach (var dirinfor in new DirectoryInfo(node.Tag.ToString()).GetDirectories())
                    {                                     //依据目录的完整目录获取其子目录,否则找不到文件
                        //以子目录的文件名为名称创建树节点
                        var n = new TreeNode(dirinfor.Name);
                        n.Tag = dirinfor.FullName;//将子目录的完整目录传给创建的树节点,
                                               //使所有的子目录都有完整目录,
                                               //便于调用此函数解析当前节点的第三级目录时,
                                            //能够得到子目录完整目录
                        node.Nodes.Add(n);//将创建的树节点添加到当前目录分配的树节点的集合中,子目录形成
                    }
                }
                catch { }
            }
            private void Form1_Load(object sender, EventArgs e)
            {
                foreach (var diver in Environment.GetLogicalDrives())//获取操作平台的驱动器名称
                {
                    var node = new TreeNode(diver);//依据驱动器的目录创建第一级树节点
                    node.Tag = diver;//将驱动器的完整目录赋给第一级节点
                    tvwfile.Nodes.Add(node);//将创建的节点添加到tvwfile分配的树节点的集合中
                    zimulu(node);//调用该函数,解析当前节点下的子目录
                }
            }
    
            private void tvwfile_BeforeExpand(object sender, TreeViewCancelEventArgs e)
            {
                foreach (TreeNode node in e.Node.Nodes/*操作节点下的子目录集合*/)//遍历操作节点下的子目录集合
                {
                    zimulu(node);//调用该函数,当前的子目录具有完整目录
                }
            }
    
            private void tvwfile_BeforeCollapse(object sender, TreeViewCancelEventArgs e)
            {
                foreach (TreeNode node in e.Node.Nodes)
                {
                    node.Nodes.Clear();//当点击折叠的一瞬间,除当前节点外,其所有的子目录全部关闭
                                      //其子目录不会清空,但是其第三级目录已被清空
                }
                
            }
    
            private void tvwfile_BeforeSelect(object sender, TreeViewCancelEventArgs e)
            {
                listView1.Items.Clear();
                try
                {
                    //获取该完整目录下所有的文件和子目录
                    foreach (var file in new DirectoryInfo(e.Node.Tag.ToString()).GetFileSystemInfos())
                    {
                        var f = new ListViewItem(file.Name);
                        f.SubItems.Add(file.LastAccessTime.ToLocalTime().ToString());
                        listView1.Items.Add(f);//将读取的所有文件和文件夹添加到该集合中
                    }
                }
                catch { }
            }
    //左边空白区域是treeview Dock是left 中间黑线是splitter
    Dock是left 右边是listview Dock是fill view是details
    
    

  • 相关阅读:
    盒模型
    DTD
    JS 中的 __proto__ 、prototype、constructor
    ES 5 中 判断数组的方法
    js keyup、keypress和keydown事件
    webpack 安装 url-loader 模块后,图片地址展示错误问题
    前端展示PDF内容
    对象的深拷贝
    IE 11 中不知promise 的 finally 方法
    js判断一个字符串是否为纯数字组成
  • 原文地址:https://www.cnblogs.com/liujianshe1990-/p/5125881.html
Copyright © 2011-2022 走看看