每日总结

window编写一个窗体完成文件操作

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using System.Windows.Forms;

using System.IO;

 

namespace WindowsFormsApp1

{

    public partial class Form1 : Form

    {

        public Form1()

        {

            InitializeComponent();

            TreeNode myComputerNode = new TreeNode("我的电脑"); treeView1.Nodes.Add(myComputerNode);

            listViewShow(myComputerNode);

        }

 

        private void Form1_Load(object sender, EventArgs e)

        {

 

        }

        private void listViewShow(TreeNode dirNode)

        {

            listView1.Clear();

            if (dirNode.Parent == null)

            {

                foreach (string DrvName in Directory.GetLogicalDrives())

                {

                    ListViewItem aItem = new ListViewItem(DrvName);

                    listView1.Items.Add(aItem);

                }

            }

            else

            {

                foreach (string DirName in Directory.GetDirectories((string)dirNode.Tag))

                {

                    ListViewItem aItem = new ListViewItem(DirName);

                    listView1.Items.Add(aItem);

                }

                foreach (string fileName in Directory.GetFiles((string)dirNode.Tag))

                {

                    ListViewItem aItem = new ListViewItem(fileName);

                    listView1.Items.Add(aItem);

                }

            }

        }

        private void listViewShow(string dirName)

        {

            listView1.Clear();

            try

            {

                foreach (string DirName in Directory.GetDirectories(dirName))

                {

                    ListViewItem aItem = new ListViewItem(DirName);

                    listView1.Items.Add(aItem);

                }

                foreach (string fileName in Directory.GetFiles(dirName))

                {

                    ListViewItem aItem = new ListViewItem(fileName);

                    listView1.Items.Add(aItem);

                }

            }

            catch

            {

            }

        }

        private void DirTreeShow(TreeNode dirNode)

        {

            try

            {

                if (dirNode.Nodes.Count == 0)

                {

                    if (dirNode.Parent == null)

                    {

                        foreach (string DrvName in Directory.GetLogicalDrives())

                        {

                            TreeNode aNode = new TreeNode(DrvName);

                            aNode.Tag = DrvName;

                            dirNode.Nodes.Add(aNode);

                        }

                    }

                    else

                    {

                        foreach (string DirName in Directory.GetDirectories((string)dirNode.Tag))

                        {

                            TreeNode aNode = new TreeNode(DirName);

                            aNode.Tag = DirName;

                            dirNode.Nodes.Add(aNode);

                        }

                    }

                }

            }

            catch{

            }

        }

 

        private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)

        {

            listViewShow(e.Node);

            DirTreeShow(e.Node);

        }

 

        private void listView1_SelectedIndexChanged(object sender, EventArgs e)

        {

            foreach (int listIndex in listView1.SelectedIndices)

            {

                listViewShow(listView1.Items[listIndex].Text);

            }

        }

    }

}

 

 

posted @   chenghaixinag  阅读(33)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
· 【译】Visual Studio 中新的强大生产力特性
· 2025年我用 Compose 写了一个 Todo App
历史上的今天:
2020-09-29 每日总结6
点击右上角即可分享
微信分享提示