小型资源管理器之动态添加TreeView节点

时间:2023-03-09 02:49:12
小型资源管理器之动态添加TreeView节点

FrmMain主界面

小型资源管理器之动态添加TreeView节点

 using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms; namespace Day09_0300小型资源管理器
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
public void BindInfo(TreeNode node)
{
lvMain.Items.Clear();
//绑定子目录
DirectoryInfo dic = new DirectoryInfo(node.Tag.ToString());
DirectoryInfo[] dirs = dic.GetDirectories();
foreach (DirectoryInfo item in dirs)
{
TreeNode tn=new TreeNode();
tn.Text=item.Name;
tn.Tag=item.FullName;
node.Nodes.Add(tn);
}
FileInfo[] file = dic.GetFiles();
ListViewItem lvi = new ListViewItem();
foreach (FileInfo di in file)
{
lvi = new ListViewItem(di.Name);
lvi.SubItems.Add(di.FullName);
lvi.SubItems.Add(di.Extension);
lvi.SubItems.Add(di.Length.ToString());
lvMain.Items.Add(lvi);
} } private void tvList_AfterSelect(object sender, TreeViewEventArgs e)
{
TreeNode node = this.tvList.SelectedNode;
this.BindInfo(node);
} }
}