我试图在树视图中显示多种类型
我有包含工作空间的项目
展开项目时,可以看到工作区列表。
我尝试使用<TreeViewItem Header="My Projects" ItemSource="{Binding Projects}">
,但“My Projects”正在成为根节点,Project1,Project2 ...成为其子节点。
此外,我在树视图中尝试了带有“我的项目”的标签,但可以根据需要进行显示。
所以最后我最后得到了一个项目树视图,然后是另一个工作区树视图。
是否可以在单个树视图中实现它?
答案 0 :(得分:0)
尝试分别为HierarchicalDataTemplate
类型和Project
类型添加不同的Workspace
,而不是直接在其中创建TreeViewItem
:
<TreeView ItemsSource="{Binding Projects}">
<TreeView.Resources>
<HierarchicalDataTemplate DataType="model:Project (Whatever type you are using for Project)" ItemsSource="{Binding Workspaces}">
<TextBlock Text="{Binding Name}" />
</HierarchicalDataTemplate>
<HierarchicalDataTemplate DataType="model:Workspace (Whatever type you are using for Workspace)">
<TextBlock Text="{Binding Name}" />
</HierarchicalDataTemplate>
</TreeView.Resources>
</TreeView>