C#中用Treeview控件加载整个硬盘
2010-03-25 22:24
281 查看
实现代码:
//加载节点 private void FillNode(TreeNode TN) { if (TN.Text.ToString() != "我的电脑") { EnumDirectories(TN); } else { EnumDrives(TN); } } // 加载盘符 private void EnumDrives(TreeNode ParentNode) { if (ParentNode.Nodes.Count == 0) { foreach (string drive in Directory.GetLogicalDrives()) { treeView_disk.SelectedNode = ParentNode; TreeNode TempNode = new TreeNode(); TempNode.Text = drive.Substring(0, drive.Length - 1); TempNode.Tag = drive; TempNode.ImageIndex = 3; TempNode.SelectedImageIndex = 3; treeView_disk.SelectedNode.Nodes.Add(TempNode); treeView_disk.SelectedNode.Nodes[treeView_disk.SelectedNode.Nodes.Count - 1].EnsureVisible(); FillNode(TempNode); } } } // 递归实现 加载目录 private void EnumDirectories(TreeNode ParentNode) { treeView_disk.SelectedNode = ParentNode; string DirectoryPath = ParentNode.Tag.ToString(); if (ParentNode.Nodes.Count == 0) { if (DirectoryPath.Substring(DirectoryPath.Length - 1) != @"/") DirectoryPath += @"/"; try { foreach (string directory in Directory.GetDirectories(DirectoryPath)) { TreeNode TempNode = new TreeNode(); TempNode.Text = directory.Substring(directory.LastIndexOf(@"/") + 1); TempNode.Tag = directory; TempNode.ImageIndex = 1; TempNode.SelectedImageIndex = 2; treeView_disk.SelectedNode.Nodes.Add(TempNode); treeView_disk.SelectedNode.Nodes[treeView_disk.SelectedNode.Nodes.Count - 1].EnsureVisible(); FillNode(TempNode); } } catch (Exception) { //异常发生 } } } private void treeView_disk_AfterSelect(object sender, TreeViewEventArgs e) { } //初始化 FillNode(treeView_disk.Nodes[0]);
相关文章推荐
- C# 系统应用之TreeView控件显示树状磁盘文件目录及加载图标
- C# 系统应用之TreeView控件 (一).显示树状磁盘文件目录及加载图标
- C# 系统应用之TreeView控件 (一).显示树状磁盘文件目录及加载图标(转)
- C# 系统应用之TreeView控件显示树状磁盘文件目录及加载图标
- C#中 TreeView 控件的使用
- C#TreeView加载节点与文件
- TreeView 控件树节点 TreeNode 的异步加载及对节点 CHECKBOX 的多选控制
- C#.Net中TreeView控件应用详解!
- [C#][SAMPLE]动态加载控件[PlaceHolder控件]
- 如何动态加载控件以及插件编程思想(C#)
- C# 动态加载控件 (转)
- C#中主窗体Panel中加载其他多个窗体Panel控件
- C#控件TreeView的应用
- C#中为啥俺地ComboBox控件在数据绑定时加载速度很慢
- C#窗体的加载等待(BackgroundWorker控件)实现
- C#拖曳控件加载,bll报错问题
- C#在窗口中ComboBox控件中加载数据库数据
- 如何设置C# treeview Web控件背景图片
- TreeView控件的加载,遍历递归的应用