0

I have a class called CFolder and a class called CFiles. Inside CFolder I have an ObservableCollection<CFolder> SubFolders, and inside the same class (CFolder) I have an ObservableCollection<CFile> FolderFiles. In the MainWindow class, I created a CFolder root_folder = new CFolder {FolderName = "Root Folder"}. I append that CFolder object to a List<CFolder> CFoldersList object. I then set treeview.itemsSource = CFoldersList.

C# Code -

CFolder root_folder = new CFolder() { folderName = "Root" };
CFile some_file = new CFile() { fileName = "Some File" };
CFolder sub_folder = new CFolder() { folderName = "Sub Folder" };
CFolder sub_sub_folder = new CFolder() { folderName = "Sub Sub Folder" };
root_folder.SubFolders.Add(sub_folder);
sub_folder.SubFolders.Add(sub_sub_folder);
root_folder.FolderFiles.Add(some_file);
CFoldersList.Add(root_folder);
treeview.ItemsSource = CFoldersList;

Inside the XAML I have -

<TreeView x:Name="treeview" Margin="0,101,6,0" Padding="1,1,1,1" UseLayoutRounding="False" AllowDrop="True">
    <TreeView.Resources>

       <HierarchicalDataTemplate DataType="{x:Type local:CFolder}" ItemsSource="{Binding SubFolders}">
            <TextBlock Text="{Binding folderName}"></TextBlock>
       </HierarchicalDataTemplate>

       <DataTemplate DataType="{x:Type local:CFile}">
            <TextBlock Text="{Binding Path=fileName}"></TextBlock>
       </DataTemplate>

     </TreeView.Resources>
</TreeView>

It shows the subfolders but it doesn't show me the files. I would like to list SubFolders and Files inside the folder

MN64
  • 23
  • 4

0 Answers0