【发布时间】:2014-02-19 16:27:25
【问题描述】:
我有一个分层集合,旨在表示一个目录结构,其中任何目录都可以包含目录和书签,而任何书签都不能包含任何内容。这两个类都扩展了一个基本抽象类。
当我尝试根据节点的类来处理与节点关联的图像时遇到了问题。根据我的谷歌搜索,我知道HierarchicalDataTemplate 是要走的路,但我似乎在我的实现中遗漏了一些东西。使用下面的代码,即使 Bookmarks 确实包含值,也不会显示任何树。
下面是我正在使用的 XAML:
<TreeView
ItemsSource="{Binding Bookmarks}">
<TreeView.Resources>
<!-- Directories -->
<HierarchicalDataTemplate
DataType="{x:Type BaseBookmarks:BookmarkDirectory}"
ItemsSource="{Binding Path=Children}">
<TreeViewItem
Header="{Binding SimpleName}">
<Image
Source="/MapInterface;component/icons/16x16_BookmarkFolder.png" />
</TreeViewItem>
</HierarchicalDataTemplate>
<!-- Bookmarks -->
<HierarchicalDataTemplate
DataType="{x:Type BaseBookmarks:Bookmark}">
<TreeViewItem
Header="{Binding SimpleName}">
<Image
Source="/MapInterface;component/icons/16x16_Bookmark.png" />
</TreeViewItem>
</HierarchicalDataTemplate>
</TreeView.Resources>
</TreeView>
【问题讨论】: