.net - 更改分层 TreeView 中的突出显示颜色

标签 .net wpf treeview highlight treeviewitem

我有一个带有 HierarchicalDataTemplate 的 TreeView。

<HierarchicalDataTemplate x:Key="treeViewItemTemplate" ItemsSource="{Binding GetChildren}">
    <DockPanel Margin="0,8,8,0">
        <Image Source="{Binding GetImage}" Width="16" Height="16" />
        <local:MonitorTriStateCheckBox Margin="4,0,0,0" IsChecked="{Binding IsChecked}" Click="CheckBox_Clicked" Tag="{Binding UniqueKey}" Style="{DynamicResource CheckBox}"></local:MonitorTriStateCheckBox>
        <TextBlock Margin="4,0,0,0" Text="{Binding Name}" Style="{DynamicResource TextBlock}">
        </TextBlock>
    </DockPanel>
    <HierarchicalDataTemplate.Triggers>
        <Trigger Property="TreeViewItem.IsSelected" Value="True">
            <Setter Property="TreeViewItem.Background" Value="Orange" />
        </Trigger>
    </HierarchicalDataTemplate.Triggers>
</HierarchicalDataTemplate>

正如您在代码中看到的,我设置了 TreeViewItem 的选中触发器,但这没有任何效果。我也试过这个:
<TreeView.ItemContainerStyle>
    <Style TargetType="{x:Type TreeViewItem}">
        <Setter Property="IsExpanded" Value="{Binding IsExpanded, Mode=TwoWay}" />
        <Setter Property="Visibility" Value="{Binding IsVisible, Mode=TwoWay}" />
        <Style.Triggers>
            <Trigger Property="IsSelected" Value="True">
                <Setter Property="Background" Value="Orange" />
            </Trigger>
        </Style.Triggers>
    </Style>
</TreeView.ItemContainerStyle>

但这也没有效果。

有没有人知道该怎么做,改变 TreeViewItem 的高亮颜色?

最佳答案

尝试这个...

<TreeView.Resources>                                                
    <SolidColorBrush Color="Green" x:Key="{x:Static SystemColors.HighlightBrushKey}"/>
</TreeView.Resources>

关于.net - 更改分层 TreeView 中的突出显示颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2651260/

相关文章:

java - .NET 相当于 Java 加密技术

c# - 在 StackExchange.Redis 中满足所有条件时交易失败

wpf - 使用 DX10 的 D3D 图像

c# - System.Xaml 和 System.Windows.Markup 的 Xaml 阅读器之间的区别?

xml - 将 XML 节点绑定(bind)到 TreeView 节点

c# - 将来自 TreeView 的孙节点文本存储在 C# (Winforms) 中的列表中

c# - Entity Framework 中 IMigrationMetadata 接口(interface)的用途和语义

.net - F#函数匹配

wpf - 一个列表框有两个项目模板

javascript - Kendo TreeView - 仅将删除图像图标添加到没有子节点的父节点