1
我想將目錄結構加載到TreeView中。如果文件夾中有一個txt文件,它必須中斷。子文件夾和文件不應顯示。請幫我找到一個算法如何將文件夾結構加載到treeview中?
private void ListDirectory(TreeView treeView, string path)
{
treeView.Nodes.Clear();
var rootDirectoryInfo = new DirectoryInfo(path);
treeView.Nodes.Add(CreateDirectoryNode(rootDirectoryInfo));
}
private static TreeNode CreateDirectoryNode(DirectoryInfo directoryInfo)
{
var directoryNode = new TreeNode(directoryInfo.Name);
foreach (var directory in directoryInfo.GetDirectories())
{
if (directory.Name.EndsWith("txt"))
{
break;
}
else
{
directoryNode.Nodes.Add(CreateDirectoryNode(directory));
}
}
foreach (var file in directoryInfo.GetFiles())
{
if (directoryNode.Name.EndsWith("txt"))
{
directoryNode.Nodes.Add(new TreeNode(file.Name));
}
}
return directoryNode;
}
究竟什麼是你的問題?你通常會想要一個遞歸解決方案。 (另外:我建議使用Path.GetExtension而不是EndsWith。) – TaW
如果在父文件夾中有一個txt文件應該不顯示子文件夾和文件 –
「如果有是文件夾中的一個txt文件,它必須中斷「 - 這是什麼意思?你想實現什麼? –