如何使用目录作为字符串填充TreeView。我使用FolderBrowserDialog选择文件夹,使用SelectedPath属性获取字符串路径(即C:\ Users \ Admin)。
另外,我可以查看这样的文件吗?
答案 0 :(得分:11)
private void button1_Click(object sender, EventArgs e)
{
FolderBrowserDialog dialog = new FolderBrowserDialog();
if (dialog.ShowDialog() != DialogResult.OK) { return; }
this.treeView1.Nodes.Add(TraverseDirectory(dialog.SelectedPath));
}
private TreeNode TraverseDirectory(string path)
{
TreeNode result = new TreeNode(path);
foreach (var subdirectory in Directory.GetDirectories(path))
{
result.Nodes.Add(TraverseDirectory(subdirectory));
}
return result;
}
答案 1 :(得分:0)
将目录节点添加到树视图中。将节点名称设置为完整路径,将文本设置为目录名称。
递归地向treeview添加节点。使用System.IO DirectoryInfo和FileInfo集合来获取每个DirectoryInfo对象中的文件和目录。在没有子目录的情况下,使递归函数的终止条件成为可能。
答案 2 :(得分:0)
您可以考虑使用Shell MegaPack中的FolderView和FileView等控件。它们可以放在你自己的表格中,而不是弹出一个模态对话框。