默认样式ListBox / ListView / ComboBox SelectedItem

时间:2010-06-15 14:12:57

标签: xaml

我想知道在XAML中我需要更改哪些setter,以便在您选择任何集合中的项目时删除默认样式,例如(listview / listbox / combobox)。

默认情况下它是蓝色的,但我不想要任何视觉方面,因为我的列表框包含一个对象堆栈面板,如果用户点击堆栈面板旁边,我不希望项目周围有蓝色背景。

我希望有人能帮助我。

1 个答案:

答案 0 :(得分:2)

你可以查看这篇文章: WPF ListView - how do i set selected item background colour? 和这篇MSDN博客文章:http://blogs.msdn.com/b/wpfsdk/archive/2007/08/31/specifying-the-selection-color-content-alignment-and-background-color-for-items-in-a-listbox.aspx

如果要更改所选项目的样式,只需定义此样式,即可为所选项目和其他项目设置相同的样式:

<Style TargetType="ListBoxItem">
    <Style.Resources>
        <SolidColorBrush x:Key="{x:Static SystemColors.HighlightBrushKey}" Color="Transparent"/>
        <SolidColorBrush x:Key="{x:Static SystemColors.HighlightTextBrushKey}" Color="Black"/>
        <SolidColorBrush x:Key="{x:Static SystemColors.ControlBrushKey}" Color="Transparent"/>
        <SolidColorBrush x:Key="{x:Static SystemColors.ControlTextBrushKey}" Color="Black"/>
    </Style.Resources>
</Style>

HighlightBrushKey和HighlightTextBrushKey是当listview具有焦点时使用的样式,当另一个控件具有焦点时,ControlBrushKey和ControlTextBrushKey。