根据这个,覆盖ControlBrushKey资源应该可以改变ListBox选定项的背景颜色,当它没有焦点时。我创建了一个简单的示例来证明这一点不正确:
如果你在.NET 4.5中运行此代码,你会发现它只改变了聚焦的颜色,而没有改变非聚焦的颜色(在.NET 4.0中可以工作)。有什么想法吗?
编辑:这似乎是List/Combo Box Background And Selected Colours Under .net 4.5的重复。
<StackPanel>
<ListBox>
<ListBox.Resources>
<SolidColorBrush x:Key="{x:Static SystemColors.HighlightBrushKey}" Color="LightBlue"/>
<!--SelectedItem without focus but doesn't really work-->
<SolidColorBrush x:Key="{x:Static SystemColors.ControlBrushKey}" Color="Orange" />
</ListBox.Resources>
<ListBoxItem>
Item 1
</ListBoxItem>
<ListBoxItem>
Item 2
</ListBoxItem>
</ListBox>
<TextBox></TextBox>
</StackPanel>
如果你在.NET 4.5中运行此代码,你会发现它只改变了聚焦的颜色,而没有改变非聚焦的颜色(在.NET 4.0中可以工作)。有什么想法吗?
编辑:这似乎是List/Combo Box Background And Selected Colours Under .net 4.5的重复。