Change selected and unfocused Listbox style to not be grayed out

.net, listbox, wpf

Solution

I have done something like this using the following in a merged ResourceDictionary, it may help you:

<Style TargetType="ListBoxItem">
    <Style.Resources>
        <!--SelectedItem with focus-->
        <SolidColorBrush x:Key="{x:Static SystemColors.HighlightBrushKey}" Color="LightBlue" Opacity=".4"/>
        <!--SelectedItem without focus-->
        <SolidColorBrush x:Key="{x:Static SystemColors.InactiveSelectionHighlightBrushKey }" Color="LightBlue" Opacity=".4"/>
    </Style.Resources>
</Style>

Problem

I have a really simple WPF ListBox with SelectionMode set to Multiple. ``` <ListBox SelectionMode="Multiple" /> ``` When the ListBox loses focus it's really hard to tell what's been selected because the selection colour changes from blue to a light grey colour. What's the easiest way of changing this behaviour so that it stays blue? I know it's probably something to do with the ListItem's style, but I can't find where. Cheers. Similar: WPF ListView Inactive Selection Color

Original source

Related problems