2
我想在TreeView中更改SelectedItem模板。 我Style.Triggers写描述TreeView.IsSelected触发器无法正常工作
简单的容器风格和变化项模板[1]:How do I highlight a treeview selected item with some color?或
[2]:WPF TreeView: How to style selected items with rounded corners like in Explorer,但它不工作。
然后我创建了一个新项目,并用一个简单的风格和模板
<TreeView>
<TreeViewItem Header="Item1" />
<TreeViewItem Header="Item2" />
<TreeViewItem Header="Item3"/>
<TreeView.Resources>
<DataTemplate DataType="{x:Type TreeViewItem}" x:Key="selectedTemplate">
<StackPanel Height="25">
<TextBlock Text="SelectedItem"/>
</StackPanel>
</DataTemplate>
</TreeView.Resources>
<TreeView.ItemContainerStyle>
<Style TargetType="TreeViewItem">
<Style.Triggers>
<Trigger Property="IsSelected" Value="True">
<Setter Property="FontWeight" Value="Bold"/>
<Setter Property="FontStyle" Value="Italic"/>
<Setter Property="Foreground" Value="Red"/>
<Setter Property="Background" Value="Green"/>
<Setter Property="ItemTemplate" Value="{StaticResource selectedTemplate}"/>
</Trigger>
</Style.Triggers>
</Style>
</TreeView.ItemContainerStyle>
</TreeView>
所以,后来我在树视图中选择fontWeight设置创建树型视图树视图,FontStyle和前景发生变化,但背景和ItemTemplate中不改变。
结果:
你能解释这种奇怪的行为?
非常感谢。这是我需要的。 – 2012-02-02 11:01:39