我有一个树形视图,使用HierarchicalDataTemplate创建,如下面的代码所示:
<TreeView ItemsSource="{Binding AllFolders}" SelectedItemChanged="TreeView_SelectedItemChanged"/>
并且
<HierarchicalDataTemplate DataType="{x:Type model:Folder}" ItemsSource="{Binding Tools}">
<StackPanel Orientation="Horizontal">
<Image Source="{StaticResource ResourceKey=icon}"/>
<TextBlock Text="{Binding Title}"/>
</StackPanel>
</HierarchicalDataTemplate>
<DataTemplate DataType="{x:Type model:Tool}">
<StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding Name}"></TextBlock>
</StackPanel>
</DataTemplate>
它的功能很好,但现在我需要将其他类型的对象添加到文件夹中以创建如下树形视图:
- 文件夹1 - 文件夹2 - 工具 - 工具1 - 工具2 - 地点 - 地点1 - 地点2 - 文件夹3
工具和地点必须使用不同的DataTemplate。它们都是包含在Folder类中的IList(
IList<Tool>
和IList<Location>
)。这是否可能实现? 我该如何实现?
谢谢您的帮助。