Установить цвет фона для выбранных элементов в ListBox

Я не могу установить цвет фона для выбранного элемента в списке. Мне не нужны чередующиеся цвета в этом примере. Я поставил их в качестве теста, и они работают. Триггер IsSelected срабатывает, поскольку жирность шрифта становится полужирной, а передний план становится красным. Установка для кисти цвета выделения значения SteelBlue не приводит к желаемому эффекту, поскольку он исчезает, когда ListBox теряет фокус. Красный и полужирный цвет сохраняется, когда ListBox теряет фокус, и это то, что я хочу. Я хочу, чтобы цвет фона сохранялся для выбранного элемента. Сейчас фон для выбранных элементов белый и остается, когда ListBox теряет фокус. Спасибо за вашу помощь, и я протестирую любое предложенное исправление.

    <ListBox Grid.Row="1" Grid.Column="0" Grid.ColumnSpan="1" Name="WFEnum" Visibility="Visible" BorderThickness="2" Margin="1" Padding="2,2,7,2"
             ItemsSource="{Binding Path=SearchItem.SrchWorkFlows}" HorizontalAlignment="Left" 
             PresentationTraceSources.TraceLevel="High" AlternationCount="2" >
        <ListBox.ItemContainerStyle>
            <Style TargetType="ListBoxItem">
                <Setter Property="VerticalContentAlignment" Value="Center" />
                <Style.Triggers>
                    <Trigger Property="ItemsControl.AlternationIndex" Value="0">
                        <Setter Property="Background" Value="LightGreen"></Setter>
                    </Trigger>
                    <Trigger Property="ItemsControl.AlternationIndex" Value="1">
                        <Setter Property="Background" Value="LightPink"></Setter>
                    </Trigger>
                    <Trigger Property="IsSelected" Value="True" >
                        <Setter Property="FontWeight" Value="Bold" />
                        <Setter Property="Background" Value="SteelBlue" />
                        <Setter Property="Foreground" Value="Red" />
                    </Trigger>
                </Style.Triggers>
                <Style.Resources>
                    <SolidColorBrush x:Key="{x:Static SystemColors.HighlightBrushKey}" Color="Transparent"/>
                </Style.Resources>
            </Style>
        </ListBox.ItemContainerStyle>
        <ListBox.ItemTemplate>
            <DataTemplate>
                <TextBlock Text="{Binding Path=Name, Mode=OneWay}" Background="Transparent" />
            </DataTemplate>
        </ListBox.ItemTemplate>
    </ListBox>
7
задан H.B. 3 December 2011 в 22:16
поделиться