我想知道在XAML中我需要更改哪些setter,以便在您选择任何集合中的项目时删除默认样式,例如(listview / listbox / combobox)。
默认情况下它是蓝色的,但我不想要任何视觉方面,因为我的列表框包含一个对象堆栈面板,如果用户点击堆栈面板旁边,我不希望项目周围有蓝色背景。
我希望有人能帮助我。
答案 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。