Lorsqu'un utilisateur clique sur une ListBoxItem, je veux qu'il soit un fond rouge de la police plus gras jaunePourquoi ne puis-je pas définir la couleur d'arrière-plan d'un ListBoxItem sélectionné dans WPF?
Tout fonctionne, sauf l'arrière-plan. Il semble qu'il existe un arrière-plan standard (bleu) pour l'élément sélectionné. Comment est-ce que je remplace cela et change l'arrière-plan sélectionné en jaune?
Voici le code:
<Window x:Class="AlternateListBox2.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Window1" Height="300" Width="300"
xmlns:local="clr-namespace:AlternateListBox2">
<Window.Resources>
<local:Countries x:Key="countries"/>
<Style TargetType="{x:Type ListBoxItem}">
<Setter Property="Content" Value="{Binding Path=Name}"/>
<Setter Property="Margin" Value="2"/>
<Style.Triggers>
<Trigger Property="IsSelected" Value="True">
<Setter Property="FontWeight" Value="Bold"/>
<Setter Property="FontSize" Value="18"/>
<Setter Property="Background" Value="Yellow"/>
<Setter Property="Foreground" Value="Red"/>
</Trigger>
</Style.Triggers>
</Style>
</Window.Resources>
<StackPanel>
<ListBox
ItemsSource="{Binding Source={StaticResource countries}}"
Width="100"
Margin="10"
HorizontalAlignment="Left"
/>
</StackPanel>
</Window>
Ne fonctionne pas dans .net 4.5, voir http://stackoverflow.com/questions/12710296/overriding-listboxitem-background-color-when-not-in-focus-net-4-5/12710338 –