2011-03-31 3 views
3

J'utilise un modèle MVVM et j'ai un scénario dans lequel je dois masquer un contrôle basé sur une logique fonctionnelle.Propriété WPF DataTrigger vs .Net

J'ai deux options pour le gérer.

  1. Je peux créer une propriété booléenne sur le modèle de vue et de lier cela avec commande correspondant à gérer la visibilité et cette propriété obtient définie, en fonction de la logique fonctionnelle.

  2. Je peux utiliser un DataTrigger sur le contrôle pour gérer la visibilité sur XAML lui-même qui utilise la même logique fonctionnelle ici. (Cette logique fonctionnelle sont faciles d'accès sur XAML)

Question - Quelle est la bonne façon de le gérer en termes de performance et maintenabilité, etc. dans WPF?

+1

Bonne question. :) Je suis intéressé pour trouver les réponses. Je serais enclin à utiliser l'option 1 car c'est ce que je pensais être le point de vue du modèle. :) – Russell

+0

@Russell: Je suis d'accord avec vous. Pas besoin de maintenir 2 déclencheurs. Vous avez seulement besoin de maintenir 1 propriété. =) – Willem

+0

duplication possible de [Est-il préférable d'utiliser DataTrigger au lieu d'une liaison de données?] (Http://stackoverflow.com/questions/4306983/is-it-better-to-use-datatrigger-instead-of-a- databinding) – Snowbear

Répondre

2

Je dirais l'option 1: Dites que vous voulez prendre une vue Silverlight. Ensuite, vous n'avez pas besoin d'aller créer le déclencheur dans la vue Silverlight.

La première option sera donc la meilleure selon MVVM.

Questions connexes