【发布时间】:2014-09-25 15:20:14
【问题描述】:
我有一个使用 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
工具和位置必须使用不同的数据模板。它们都是 IList 包含在文件夹类中(IList<Tool> 和 IList<Location>)。
甚至有可能做到吗? 我怎样才能做到这一点?
感谢您的帮助
【问题讨论】:
标签: c# wpf treeview hierarchicaldatatemplate