J'ai un <ListBox>
avec la coutume <ListBox.ItemTemplate>
et <DataTemplate>
en elle:DataTemplate, Style, Triggers
<ListBox>
<ListBox.ItemTemplate>
<DataTemplate>
<Border BorderBrush="Black" BorderThickness="2" CornerRadius="5">
<Image Source="{Binding Picture}" />
</Border>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
Maintenant, quand je vais choisir le ListBoxItem
il devient laid avec sélection de ligne de couleur bleue. Je voudrais le changer. Je ne veux colorier que l'arrière-plan de la bordure et rien d'autre. Aussi, je veux changer le comportement MouseOver
. J'ai essayé les triggers, mais ContentPresenter
n'a pas de propriété Background.
UPD:
Eh bien, je l'ai réussi à changer l'arrière-plan sur MouseEnter
et MouseLeave
:
<EventTrigger RoutedEvent="Border.MouseEnter">
<BeginStoryboard>
<Storyboard >
<ColorAnimation Storyboard.TargetProperty="Background.Color"
To="LightBlue" Duration="0:0:0.03"/>
</Storyboard>
</BeginStoryboard>
</EventTrigger>
Mais ne peut toujours pas changer le Background
quand l'élément est sélectionné. J'essaie par:
<Trigger Property="ListBoxItem.IsSelected" Value="True">
<Setter Property="Background" Value="Red" />
</Trigger>
ne fonctionne pas
Ouais bien il dit: Vous ne trouvez pas la propriété Template « IsSelected » du type « System.Windows.Controls.ContentPresenter » – Agzam