Comment définir une couleur d'élément sélectionné par WPF ListView?
Je suis en train de recréer le Courrier de l'INTERFACE utilisateur de Windows 8 dans une application WPF en cours d'exécution sur Windows 7. Voici ce que je veux réaliser:
En particulier, je ne sais pas comment changer la couleur d'arrière-plan pour les éléments sélectionnés par exemple, la Boîte de réception de l'élément dans la première colonne et le mail de Twitter dans la deuxième colonne. J'ai essayé plusieurs solutions à partir d'autres semblables Stackoverflow Questions, mais aucune ne semble fonctionner pour moi. par exemple,
L'élément sélectionné perd de style lors de la discussion déplacée dans WPF ListBox
WPF ListView Inactif Couleur de Sélection
Voici le code que j'ai pour mon listview:
<ListView Grid.Row="0" SelectedItem="{Binding Path=SelectedArea}" ItemsSource="{Binding Path=Areas}" Background="#DCE3E5" >
<ListView.Resources>
<!-- Template that is used upon selection of an Area -->
<ControlTemplate x:Key="SelectedTemplate" TargetType="ListViewItem">
<Border Background="#388095" Cursor="Hand" >
<TextBlock Text="{Binding Name}" Margin="5" />
</Border>
</ControlTemplate>
<Style TargetType="ListViewItem">
<Setter Property="Template">
<Setter.Value>
<!-- Base Template that is replaced upon selection -->
<ControlTemplate TargetType="ListViewItem">
<Border Background="#DCE3E5" Cursor="Hand" >
<TextBlock Text="{Binding Name}" Margin="5" />
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
<Style.Triggers>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsSelected" Value="true" />
</MultiTrigger.Conditions>
<Setter Property="Template" Value="{StaticResource SelectedTemplate}" />
</MultiTrigger>
</Style.Triggers>
</Style>
</ListView.Resources>
</ListView>
Comment puis-je changer la couleur d'arrière-plan de l'élément sélectionné? Et comment puis-je conserver le changement de couleur lorsque le changement de focus.
source d'informationauteur Yasir
Vous devez vous connecter pour publier un commentaire.
J'ai fait quelque chose de similaire à ceci récemment:
Je crois retrait:
vous permettra de garder la couleur d'arrière-plan après la focus est perdu.
EDIT:
En réponse à votre question ci-dessous:
Vous pouvez lier la propriété tag de la TextBlock pour la commande de paramètre, puis exécuter la commande sur l'événement MouseUp du TextBlock:
Et dans le code behind:
Juste en ajoutant à "TrueEddie" point.
L'autre option serait "ItemContainerStyle" dans la liste.
ListViewItemOptionStyle définis dans Style.xml
Pour plus de détails
https://sites.google.com/site/greateindiaclub/mobil-apps/windows8/wpfimportantbindings