zoukankan      html  css  js  c++  java
  • 小型系统管理器

    1:首先自定义一个方法,方法参数是树状图的节点。作用(将所有文件目录绑定到该树状图的节点上,并且将文件的详细信息在listView控件上展示出来。)

     public void DataSource(TreeNode node)
            {
                try
                {
                    tv_Info.SelectedNode.Nodes.Clear();
                    DirectoryInfo di = new DirectoryInfo(node.Tag.ToString());
                    //遍历选中节点代表的目录
                    DirectoryInfo[] dis = di.GetDirectories();
                    //循环绑定
                    foreach (DirectoryInfo item in dis)
                    {
                        TreeNode nodeTwo = new TreeNode();
                        nodeTwo.Text = item.Name;
                        nodeTwo.Tag = item.FullName;
                        node.Nodes.Add(nodeTwo);
    
                    }
                    //清空ListView 的控件的数据
                    lv_info.Items.Clear();
                    // List<FileLei> list = new List<FileLei>();
                    //选中目录的所有文件
                    FileInfo[] difiles = di.GetFiles();
                    foreach (FileInfo item in difiles)
                    {
                       
                        //创建一个项的对象并绑定数据
                        ListViewItem lvi = new ListViewItem(item.Name);
                        lvi.SubItems.Add((item.Length / 1024).ToString());
                        lvi.SubItems.Add(item.Extension.Substring(1));
                        lvi.SubItems.Add(item.FullName);
    
                        lv_info.Items.Add(lvi);
    
                    }
    
                }
                catch (Exception)
                {
    
                    MessageBox.Show("出错了!");
                }
    }

    2:在load事件中初始化盘符,默认成为D盘,Tag值也改为D盘

    private void Frm_Menu_Load(object sender, EventArgs e)
            {
    
               
                //绑定TreeView 的根节点
                TreeNode node = new TreeNode("D:\");
                //设置根节点相关路径
                node.Tag = "D:\";
                tv_Info.Nodes.Add(node);
    
            } 

    3:在TreeView控件的被选中事件中调用DataSource()方法,方法参数为被选中的节点。

    //选中节点后的事件
            private void tv_Info_AfterSelect(object sender, TreeViewEventArgs e)
            {
             
                DataSource(tv_Info.SelectedNode);
    
            }

    效果展示图:

  • 相关阅读:
    C/C++ volatile
    Linux fopen/fread/fwrite和open/read/write
    反思 承认失败,负重前行。
    算法和数据结构 打印回形矩阵
    Linux 软链接和硬链接
    数据库 CAS原理和ABA问题
    算法和数据结构 海量数据求前K个数
    算法和数据结构 冒泡排序
    java中的经典算法之选择排序(SelectionSort)
    【Java】常量、关键字、标识符、注释
  • 原文地址:https://www.cnblogs.com/chimingyang/p/5417339.html
Copyright © 2011-2022 走看看