zoukankan      html  css  js  c++  java
  • C#小型资源管理器

     添加treeView 和 listView 两个控件

    {
         public  class MyFile
        {
                public float FileLength { get; set; }//文件大小(KB)
                public string FileName { get; set; }//文件名
                public string FilePath { get; set; }//文件路径
                public string FileType { get; set; }//文件类型
            }
    
        }

    主窗体的代码:

    public partial class FrmMain : Form
        {
            public FrmMain()
            {
                InitializeComponent();
            }
            TreeNode tn; //定义一个节点
            private void FrmMain_Load(object sender, EventArgs e)
            {
                //检索计算机上的所有逻辑驱动器的驱动器名称。
                DriveInfo[] di = DriveInfo.GetDrives();
                foreach (DriveInfo item in di)
                {
                    tn = new TreeNode(item.Name);
                    tn.Tag = item.Name;
                    tv01.Nodes.Add(tn);
                }
            }
            //单击绑定文件和文件夹信息
            private void tv01_AfterSelect(object sender, TreeViewEventArgs e)
            {
                TreeNode tn = tv01.SelectedNode;
                BingInfo(tn);
            }
    
    
            private void BingInfo(TreeNode tn)
            {
                //清空
                listView1.Items.Clear();
                //绑定子目录
                DirectoryInfo dic = new DirectoryInfo(tn.Tag.ToString());
    
                DirectoryInfo[] info = dic.GetDirectories();
    
                foreach (DirectoryInfo item in info)
                {
                    TreeNode temp = new TreeNode();
                    temp.Text = item.Name;
                    temp.Tag = item.FullName;
                    tn.Nodes.Add(temp);
                }
    
                //获取目录下文件列表
                FileInfo[] fileinfo = dic.GetFiles();
                //定义泛型集合存储文件信息
                List<MyFile> files = new List<MyFile>();
                //遍历文件列表
                foreach (FileInfo it in fileinfo)
                {
    
                    MyFile file = new MyFile();
                    file.FileName = it.Name;
                    file.FileLength = it.Length;
                    file.FileType = it.Extension;
                    file.FilePath = it.FullName;
                    files.Add(file);
                }
                //绑定到listview中
                foreach (MyFile em in files)
                {
                    ListViewItem lv = new ListViewItem(em.FileName);
                    lv.SubItems.Add(em.FileLength.ToString());
                    lv.SubItems.Add(em.FileType);
                    lv.SubItems.Add(em.FilePath);
                    listView1.Items.Add(lv);
                }
            }
    
            private void 复制ToolStripMenuItem_Click(object sender, EventArgs e)
            {
                 //判断是否选中
                if (listView1 .SelectedItems .Count ==0)
                {
                    return;
                }
                //提示用户选择目标文件夹
                FolderBrowserDialog fbd = new FolderBrowserDialog();
    
                DialogResult result = fbd.ShowDialog();
                //源文件路径
                string sourcepath = listView1.SelectedItems[0].SubItems[3].Text;
                //目标文件路径
                string despath = null;
                //如果正确选择目标位置,执行复制操作
                if (result==DialogResult .OK )
                {
                    despath = fbd.SelectedPath;
                    //lvlist表示显示文件信息的ListView对象
                    despath += "\" + listView1.SelectedItems[0].SubItems[0].Text;
                    //复制文件
                    File.Copy(sourcepath ,despath );
                    MessageBox.Show("复制成功!");
                }
    
               
            }
    
            private void 删除ToolStripMenuItem_Click(object sender, EventArgs e)
            {
                string delectpath = listView1.SelectedItems[0].SubItems[3].Text;
                File.Delete(delectpath);
                MessageBox.Show("删除成功!");
            }
  • 相关阅读:
    Django测试开发-20-settings.py中templates配置,使得APP下的模板以及根目录下的模板均可生效
    Django测试开发-19-auth模块之session,cookie
    Django测试开发-19-引入xadmin
    Django测试开发-17-报错:No module named 'django.contrib.staticfiles.templatetags'
    Django测试开发-16-ImportError: cannot import name 'six' from 'django.utils'
    Django测试开发-15-django.utils.encoding未发现 python_2_unicode_compatible包
    Django测试开发-14-数据库表设计:多对多,一对一,一对多
    Django测试开发-13-优化表单提交(GET、POST、登录、注册)
    Django测试开发-12-优化admin (2020-03-13 18:57)
    Django测试开发-11-返回json数据
  • 原文地址:https://www.cnblogs.com/SFHa/p/8891356.html
Copyright © 2011-2022 走看看