高级文件浏览器






2.87/5 (23投票s)
2004年4月21日
1分钟阅读

103660

2442
一个增强的 Windows 资源管理器应用程序,包含一个树形视图,用户可以在其中查看现有驱动器中的文件,直到特定层级。
引言
目标是创建一个(增强的 Windows 资源管理器)应用程序,其中包含一个树形视图,用户可以在其中查看现有驱动器中的文件,直到特定层级。(在本例中为 4 级)。您可以轻松地将其更改为任何您想要的层级。 此外,当用户从树形视图中选择一个文件时,我们需要在分组框的标签中显示该文件的不同属性。
我创建了一个 Windows 应用程序,其中包含一个树形视图,显示驱动器中的文件,如图 1 所示。用户可以展开到 4 层以查看文件/目录。 所选文件或文件夹的详细信息,例如文件名、创建日期、大小等,显示在Details GroupBox
中的标签中(图 1)。 此外,Data GroupBox
包含一个多行文本框,其中显示所选文件的内容。
图 1
此函数在任何分支的 4 层之后退出。 实际上,Windows 资源管理器也是这样做的。 最初,它只加载几个层级,当您单击某个分支时,它会重新加载该分支到更深的层级。
如果您尝试加载所有层级,则根据您的机器速度,可能需要 2-5 分钟。
private void FillDirectory(string drv, TreeNode parent, int level)
{
try
{
// I want to go only upto 4 level.
level++;
if (level > 4)
return;
DirectoryInfo dir = new DirectoryInfo(drv);
if (!dir.Exists)
throw new DirectoryNotFoundException
("directory does not exist:"+drv);
foreach(DirectoryInfo di in dir.GetDirectories())
{
TreeNode child = new TreeNode();
child.Text = di.Name;
parent.Nodes.Add(child);
FillDirectory(child.FullPath, child, level);
}
}
catch(Exception ex)
{
ex.ToString();
}
}
图 2。