Bon exemple de pratique Silverlight-MVVM

J’ai lu un certain nombre de bons articles sur le modèle Model-View-ViewModel et mon équipe a l’intention d’implémenter ce modèle dans la dernière version de notre application. Je n’ai toujours pas tout compris pour que cela fonctionne. Je voudrais trouver un bon exemple de ce modèle que je peux travailler. Quelque chose à petite échelle, comme le fait Jason Dolinger dans sa vidéo ici , mais j’aimerais quelque chose que je peux résoudre moi-même à un rythme plus lent.

Merci d’avance pour votre aide.

En gros, un ViewModel est un wrapper autour du modèle. Maintenant, cela pourrait ne pas être très utile 🙂 Pensez au modèle comme aux données avec lesquelles votre application fonctionne, par exemple une personne. Maintenant, une personne a un anniversaire et vous voudrez peut-être avoir un formulaire pour entrer l’anniversaire de la personne. Supposons que nous n’utilisions qu’une simple zone de texte, la date apparaît quelque chose comme 01-02-2009 12:00:00 AM. Pour les débutants, nous ne voulons pas la partie temps et nous ne serons peut-être pas heureux de la partie 01-02-2009, car cela dépend de vos parameters régionaux.

Alors, voici le ViewModel im. Il encapsule la classe Person et expose la date sous la forme de trois valeurs entières, year, month et day. Dans le jeu de propriétés, il tente de générer une date à partir des différentes valeurs et affiche les erreurs éventuelles.

Donc, tout simplement dit un ViewModel est un wrapper de modèle spécifiquement orienté vers une vue particulière (affichage). Il élimine la plupart des convertisseurs IValue en même temps.

Josh Smith a une bonne explication ici: http://joshsmithonwpf.wordpress.com/2008/11/14/using-a-viewmodel-to-provide-meaningful-validation-error-messages et une grande discussion ici: http: / /groups.google.com/group/wpf-disciples/browse_thread/thread/3fe270cd107f184f?pli=1

Prism 4.0 inclut désormais une documentation pour la création d’applications MVVM. Ceci est ciblé pour l’utilisation des bibliothèques Prism mais les concepts fonctionnent pour le modèle MVVM en général.

http://compositewpf.codeplex.com/releases

En voici un autre à append à la liste: Simple MVVM Toolkit par Tony Sneed (le vôtre): http://simplemvvmtoolkit.codeplex.com .

La boîte à outils se compose de classes d’assistance, de modèles d’éléments Visual Studio et d’extraits de code. En plus de la boîte à outils réelle, il existe un exemple d’application avec des instructions détaillées sur la création d’une application Silverlight de base à l’aide du modèle MVVM.

Nikhil Kothari a écrit un article sur l’utilisation de ce modèle avec sa bibliothèque Silverlight.FX. Consultez-le ici: http://www.nikhilk.net/ViewModel-Pattern-DLR.aspx

Il y a aussi:

Silverlight MVVM: une explication simplifiée (excessivement)

J’ai traversé beaucoup récemment, les deux qui se distinguent sont:

Dan Wahlin (LIDNUG):

http://www.lidnug.org/Archives.aspx

John Papa’s (PDC 2010):

http://player.microsoftpdc.com/Session/76864d75-b4da-4858-aac7-786c5f28e344

La meilleure explication d’un ViewModel a été donnée par Scott Hanselman lors de son discours sur le MVC en Europe.

Une réponse en une ligne est: – C’est un modèle (classe) créé dans le seul but d’envoyer toutes les données nécessaires à une vue particulière et de recevoir des données modifiées de la vue en cas de liaisons bidirectionnelles.

Jetez un œil à mon article sur le MVVM réel dans Silverlight. Bien que ce ne soit pas pour les nouveaux arrivants, et cibler principalement les développeurs experts travaillant sur des projets réels.

http://alexburtsev.wordpress.com/2011/03/05/mvvm-pattern-in-silverlight-and-wpf/