Dans le modèle MVVM, je ne veux pas penser à la vue lors de la création du modèle. J'utilise donc des propriétés publiques avec des données stockées dans ILists et ainsi de suite. Mais alors mon viewmodel n'est pas informé des modifications apportées à ces listes du côté du modèle. Devrais-je utiliser ObservableCollections dans mon modèle à la place? Mais cela me semble étrange.Conception de modèle MVVM
Répondre
Oui, vous devez utiliser ObservableCollections. Je ne sais pas ce qui serait étrange à ce sujet? Tout ce qu'un ObservableCollection fait est de notifier les auditeurs des changements. Cela ne doit pas nécessairement être une interface utilisateur.
Votre ViewModel ne doit pas savoir quoi que ce soit au sujet de la vue réelle de l'utiliser, mais comme il est un Voir modèle, il est ok pour elle d'assumer quelque chose va l'utiliser, donc ObservableCollection est la voie à suivre et aussi, pour autant que je sache, la pratique courante. En outre, les écouteurs savent exactement quels éléments ont été ajoutés ou supprimés, il n'est donc pas nécessaire de mettre à jour toute la liste lorsque des changements se produisent => de meilleures performances pour les mises à jour. C'est aussi ce que Microsoft dit (ne trouve pas l'article à ce sujet maintenant)
C'est également la raison pour laquelle la plupart des gens implémentent INotifyPropertyChanged sur leur modèle de données, parce que vous voulez que le modèle de vue soit notifié à chaque fois que les données changements de modèle.
- 1. Silverlight MVVM reliant le modèle et le modèle de vue
- 2. MVVM & WCF - Voir le modèle et la relation de modèle
- 3. Recherche de modèle de conception
- 4. (MVVM) Voir le modèle Voir le modèle et le filetage
- 5. Comment utiliser RadioButtons et le modèle MVVM
- 6. Fenêtres enfants Silverlight dans le modèle MVVM
- 7. Quels sont les problèmes du modèle MVVM?
- 8. modèle de conception de propriétés polymorphes
- 9. questions de conception de modèle django
- 10. Modèle de conception de visiteur dans OCaml
- 11. Ressources de modèle de conception CFML?
- 12. Syntaxe modèle de conception de surbrillance
- 13. Conception de modèle de table Java
- 14. Comment maintenir la cohérence entre le modèle et le modèle de vue dans le modèle MVVM?
- 15. étiquettes Django et traductions - Modèle de conception
- 16. Modèle de conception pour les fonctions optionnelles?
- 17. Modèle de conception pour les observateurs multithread
- 18. Modèle de conception adapté à la tâche
- 19. Modèle de conception d'événement/classe (prototype)
- 20. questions MVVM: définition du modèle, les objets du modèle d'emballage et de dialogue
- 21. WPF créant des lignes dynamiques à l'aide du modèle MVVM
- 22. Modèle de conception de stratégie C++, création d'un tableau d'interface
- 23. Vous cherchez un modèle de conception de création
- 24. Quel est le nom de ce modèle de conception?
- 25. Qui doit faire la conception de modèle de données
- 26. Connaissez-vous des exemples de modèle de conception PAC?
- 27. Comment appeler mon service via un modèle de référentiel dans l'application MVVM (WPF)?
- 28. Modèle de conception Silverlight pour les performances - interface client très riche
- 29. état de l'objet dans le modèle de conception de la méthode du modèle
- 30. MVVM: liaison à ListBox.SelectedItem?
C'est ce que je voulais savoir à ce sujet. Merci – apparat
Cela pourrait devenir très cher dans une application de toute taille/complexité. –