如何使用某种颜色突出显示树视图所选项目?

时间:2009-05-18 08:49:10

标签: c# wpf xaml treeview selecteditem

我在WPF中有一个树视图。当我选择treeviewitem时,我想要一种不同的颜色。

2 个答案:

答案 0 :(得分:9)

TreeView.ItemContainerStyle 中的简单触发器无法帮助默认的TreeView模板。

对于标准模板,突出显示是通过更改TreeView模板中特定 元素的背景来完成的。没有TreeView模板更改的程序员无法访问此特定元素。默认情况下,资源 用于设置此元素的背景以突出显示。

所以方法很少:

  1. 简单(但可能产生副作用):使用键 {x:Static SystemColors.HighlightBrushKey} 为TreeView或 ItemsPanel 模板重新定义资源;
  2. 重新定义TreeView的完整模板。

答案 1 :(得分:-1)

尝试以下代码。它应该工作。

<Style TargetType="{x:Type TreeViewItem}">
    <Style.Triggers>
        <Trigger Property="IsSelected" Value="True">
            <Setter Property="Background" Value="Yellow"/>
        </Trigger>
    </Style.Triggers>
</Style>