我無法設置列表框上選定項目的背景顏色。在這個例子中,我不需要交替的顏色。我把他們作爲一個測試,他們的工作。觸發器IsSelected正在觸發,因爲前進到粗體且前景變爲紅色。將高亮顏色刷設置爲SteelBlue不會達到預期的效果,因爲當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>
值得一提的是,截至2015年1月,這對標準主題的System.Windows.Controls.ListBox的選擇高亮顏色沒有影響。觸發器適用於前臺,但不適用於後臺。你必須重新設定ListBoxItem。 –