[英]TreeView ItemTemplate
I have a static TreeView
where all items are added in the XAML like: 我有一个静态
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>
So I don't have an ItemsSource
. 所以我没有
ItemsSource
。 Now I want to add Images to my TreeViewItems
with a Style. 现在,我想使用样式将图像添加到
TreeViewItems
。 Therefor I use: 为此,我使用:
<TreeView.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<Image Width="16" Height="16"></Image>
<Label Content="???"/>
</StackPanel>
</DataTemplate>
</TreeView.ItemTemplate>
Unfortunately this doesn't work. 不幸的是,这不起作用。 The
StackPanel
is not used. 不使用
StackPanel
。
I also tried: 我也尝试过:
<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>
This also doesn't do what I expect it to do. 这也没有达到我的预期。
What I am doing wrong? 我做错了什么?
Add this style in your Window.Resources. 在您的Window.Resources中添加此样式。 Remove the ItemTemplate you defined as that will not be applied to the TreeViewItem you have added in xaml.
删除您定义的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>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.