2012-08-27 3 views
5

Je rencontre des problèmes lors de la configuration du style de l'élément sélectionné dans la zone de liste de l'application Metro.Styling SelectedItem dans ListView dans Metro App XAML

J'ai créé le DataTemplate pour l'élément dans lequel il y a un TextBlock dont je voudrais changer la couleur. J'ai essayé beaucoup de choses de WPF mais elles ne sont pas disponibles pour le métro comme DataTemplate.Triggers, Style.Triggers et ainsi de suite. J'ai également essayé de faire une copie du modèle ItemContainerStyle mais comme il utilise ContentPresenter pour afficher mon DataTemplate, je ne savais pas quoi modifier pour obtenir ce que je voulais. La même chose était avec le convertisseur de valeur car je ne savais pas comment utiliser RelativeSource pour fournir au convertisseur la propriété IsSelected du ListBoxItem ....

Merci pour votre aide!

Répondre

6

Vous avez parfaitement raison de modifier le ItemContainerStyle. Si vous êtes dans Visual Studio ou Blend, faites un clic droit sur le ListView et sélectionnez

Modifier les modèles supplémentaires -> Modifier Generated article Container [ItemContainerStyle] -> Modifier une copie

Il est important lors de cette opération que « Modifier Current 'n'est pas activé. Si c'est le cas, recherchez ce modèle et supprimez-le (il peut s'agir d'un modèle vide et vous voulez le modèle complet).

Cela va créer un style pour un ListViewItem. Le ListViewItem a beaucoup de contrôles à l'intérieur et la plupart d'entre eux traitent de la sélection ou d'autres états. Vous devez apporter des modifications au VisualState Selected.

Questions connexes