Comment faire pour modifier le style d'un bouton en fonction de si autre à l'aide de DataTriggers dans wpf mvvm
Je veux changer le style de bouton sur la base de si la condition else lors de la première application wpf est prise en chargé. Sur demande chargés en utilisant si, il y aura un style de bouton et d'autre part, il y aura un autre. Comment obtenir cette aide Datatriggers soit en utilisant le pattern MVVM.
Gentiment Suggérer?
Grâce
OriginalL'auteur Tarun | 2011-04-13
Vous devez vous connecter pour publier un commentaire.
Vous devriez regarder dans les Modèles de Données et un Sélecteur de Modèle. Voici une hâte copier collé exemple de mon propre code, il n'est pas immédiatement applicable aux boutons, mais je pense qu'il devrait vous aider le long de votre chemin.
Ce qui suit est les ressources de l'application fichier xaml. Je l'utilise pour décider de la vue à utiliser pour le ProjectViewModel basé sur une variable dans le ViewModel:
La ProjectViewModelTemplateSelector est définie comme suit:
}
OriginalL'auteur Pieter Müller
Vous pouvez utiliser
Style.Setters
pour définir la valeur par défaut. Pour les autres conditions déterminées utilisationStyle.Triggers
. Cela fonctionne comme si le reste.OriginalL'auteur Sergii
Alternativement, si vous souhaitez utiliser DataTriggers, vous pouvez utiliser les éléments suivants:
Dans ce cas, ce Dernier doit exposer la propriété booléenne NormalButtonMode. Dans cet exemple, j'ai seulement mis le Contenu de la propriété du bouton, mais vous pouvez lister n'importe quel nombre d'ouvreurs à l'intérieur de la DataTrigger.
Vous pouvez aussi mettre ce Style dans un dictionnaire de ressources et juste un lien pour chaque bouton à l'aide d'StaticResource. Assurez-vous simplement d'exposer les NormalButtonMode (ou autre) bien sur chaque et chaque ViewModel - peut-être le mettre dans une classe de base.
Il a travaillé. Je l'ai changé par mon besoin. Merci
OriginalL'auteur Pieter Müller