我有一个任务,它是实施Windows应用程序。 在左侧,我必须有一个目录树,如果单击一个文件夹,则在其中列出包含文件的目录树。我在互联网上尝试了不同的教程,这种解决方案最接近我的问题,但是我有一个问题。这是示例结构:
js
因此,我的代码显示了以下内容:
ROOT
-FOLDER A
-FOLDER 1 IN A
-FOLDER 2 IN A
-FOLDER B
-FOLDER 1 IN B
-FOLDER 2 IN B
它不可点击,旁边没有加号来展开它,什么也没有。
这是我的代码
FOLDER A
FOLDER B
{
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
public partial class MainWindow : Window
{
/// <summary>
/// Initializes a new instance of the <see cref="MainWindow"/> class.
/// </summary>
public MainWindow()
{
InitializeComponent();
}
/// <summary>
/// Populate DirTree with folders and subfolders.
/// </summary>
/// <param name="root"></param>
/// <param name="parent"></param>
TreeNode populateTree(DirectoryInfo root, TreeNode parent)
{
TreeNode node = new TreeNode(root.Name);
DirectoryInfo[] subdirs = root.GetDirectories();
foreach (DirectoryInfo subdir in subdirs)
{
populateTree(subdir, node);
}
if (parent == null)
{
return node;
}
else
{
parent.Nodes.Add(node);
return parent;
}
}
private void Form_Loaded(object sender, RoutedEventArgs e)
{
DirectoryInfo root = new DirectoryInfo(@"C:\Users\Tamás\Desktop\Projektek\");
TreeNode node = populateTree(root, null);
DirTree.Items.Add(node);
}
}
}