Je comprends que dans le modèle MVVM, un ViewModel ne devrait rien savoir de la vue.Quelle est la meilleure façon pour ViewModel de manipuler la vue?
Donc, il semble y avoir deux façons que le ViewModel peut cause de quelque chose de particulier se produise sur la UI, considérer ce flux commun d'événements:
- types d'utilisateurs quelque chose dans une zone de texte
- l'utilisateur clique sur le bouton
- bouton Appels DelegateCommand appelé "Enregistrer" sur viewmodel
- Voir le modèle enregistre le texte de la zone de texte
- si tout va bien au cours de la sauvegarde, le modèle de vue change sa propriété INotifyPropertyChanged appelé SaveStatus à « Réussi »
maintenant dans la vue, j'ai deux façons de permettre ce changement de avoir un effet sur l'interface utilisateur:
- dans la vue il pourrait y avoir un Textblock qui a un Converter sur ce qui convertit le texte de SaveStatus à une phrase telle que « le sauver s dépassé. "
- dans la vue il pourrait y avoir un Trigger qui vérifie si SaveStatus = « Réussi » et si oui, puis une série de Setters changer l'interface utilisateur appropriée (éléments cacher, changer les textes, en changeant les couleurs, etc.)
Est-ce le flux base d'informations de MODELVIEW pour voir que vous utilisez dans vos applications?