Cela semble être une question stupide, mais j'ai regardé à travers les docs pour prisme et cherché sur internet et ne peut pas trouver un exemple ... Voici l'affaire.Peut exécuter la question en utilisant des commandes de délégué dans le prisme
J'utilise un DelegateCommand dans Prism, il fonctionne correctement, sauf lorsque j'attribue un délégué à l'exécution de can à la méthode CanExecute. dans un autre modèle de vue, j'ai un événement qui prend un bool que je publie aussi et je peux voir que l'événement se déclenche et que le bool est passé à mon modèle de vue avec la commande dedans pas de problème mais c'est ce que je Ne comprends pas ... Comment l'exécution peut-elle savoir que l'état a changé? Voici un code pour l'exemple.
des modèles de vue Ctor
eventAggregator.GetEvent<NavigationEnabledEvent>().Subscribe(OnNavigationEnabledChange, ThreadOption.UIThread);
NavigateCommand = new DelegateCommand(OnNavigate,() => nextButtonEnabled);
maintenant - ici est l'événement OnNavigationEnableChange. Comme - il me manque totalement quelque chose ici - comment la commande sait-elle que nextButtonEnabled n'est pas vrai?
Si quelqu'un pouvait me diriger vers un exemple de travail qui serait génial.
OK - merci!
un peu confus sur ce que vous demandez ... vous vous demandez comment il sait quand appeler à nouveau CanExecute pour actualiser la capacité de la commande à exécuter? L'enregistrement de votre événement via l'EventAggregator Je pense qu'il est en train de brouiller les pistes ... peut-être un exemple de code plus concis car votre gestionnaire d'événements est séparé du gestionnaire de commandes. –
Oui, vous avez raison avec votre première question ... Comment sait-il rafraîchir la capacité des commandes à exécuter en appelant CanExecute? Je ne l'ai pas dit aussi bien. Merci de votre aide! – Kenn