我有一个静态TreeView,其中所有项都添加在类似XAML中:
<TreeView>
<TreeViewItem Header="Pages">
<TreeViewItem Header="Google"/>
<TreeViewItem Header="Stackoverflow"/>
</TreeViewItem>
<TreeViewItem Header="Stuff">
<TreeViewItem Header="MyDomain"/>
<TreeViewItem Header="Other Domains">
<TreeViewItem Header="Domain 1"/>
<TreeViewItem Header="Domain 2"/>
<TreeViewItem Header="Domain 3"/>
</TreeViewItem>
</TreeViewItem>
</TreeView>所以我没有ItemsSource。现在我想用样式将图片添加到我的TreeViewItems中。为此,我使用:
<TreeView.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<Image Width="16" Height="16"></Image>
<Label Content="???"/>
</StackPanel>
</DataTemplate>
</TreeView.ItemTemplate>不幸的是这不起作用。不使用StackPanel。
我也试过:
<TreeView.Resources>
<Style TargetType="{x:Type TreeViewItem}">
<Setter Property="TreeViewItem.Header">
<Setter.Value>
<StackPanel Orientation="Horizontal">
<Image Width="16" Height="16"/>
<Label Content="???"/>
</StackPanel>
</Setter.Value>
</Setter>
</Style>
</TreeView.Resources>这也不像我期望的那样。
我做错什么了?
发布于 2014-06-05 07:00:51
在Window.Resources中添加此样式。删除您定义的ItemTemplate,因为它不会应用于您在xaml中添加的TreeViewItem。
<Style TargetType="TreeViewItem">
<Setter Property="HeaderTemplate">
<Setter.Value>
<DataTemplate>
<StackPanel>
<Image Width="16" Height="16"/>
<Label Content="{TemplateBinding Content}"/>
</StackPanel>
</DataTemplate>
</Setter.Value>
</Setter>
</Style>https://stackoverflow.com/questions/24053471
复制相似问题