質問

Model-View-ViewModelパターンに関する多くの優れた記事を読みました。私のチームは、このパターンをアプリの最新バージョンに実装する予定です。私はまだこの仕事をするために一緒に行くすべてのビットを得ることはできません。このパターンの良い例を見つけて、作業を進めたいと思います。 Jason Dolingerが彼のビデオこちらで行っているような小規模なものですが、私は遅いペースで自分で作業できるもの。

ご協力いただきありがとうございます。

役に立ちましたか?

解決

基本的に、ViewModelはモデルのラッパーです。さて、これはまだあまり役に立たないかもしれません:-)モデルは、アプリケーションが動作するデータであると考えてください。ある人には誕生日があり、その人の誕生日を入力するフォームが必要になる場合があります。単純なTextBoxを使用しているだけで、日付が01-02-2009 12:00:00 AMのようになっているとします。まず第一に、時間の部分は必要ありません。また、これはロケール設定に依存するため、2009年1月2日の部分については満足できません。

ここで、ViewModelはimになります。 Personクラスをラップし、日付を年、月、日の3つの整数値として公開します。プロパティセットでは、異なる値から日付を作成しようとし、発生する可能性のあるエラーを表示します。

つまり、ViewModelは特定のビュー(ディスプレイ)に特化したモデルラッパーである、と簡単に言いました。ほとんどのIValueConvertorsを同時に削除します。

ジョシュ・スミスの説明はこちらです: http://joshsmithonwpf.wordpress.com/2008/11/14/using-a-viewmodel-to-provide-meaningful-validation-error-messages と大きな議論:< a href = "http://groups.google.com/group/wpf-disciples/browse_thread/thread/3fe270cd107f184f?pli=1" rel = "noreferrer"> http://groups.google.com/group/wpf- disciples / browse_thread / thread / 3fe270cd107f184f?pli = 1

他のヒント

Prism 4.0には、MVVMアプリケーションを作成するためのドキュメントが含まれています。これはPrismライブラリを使用することを目的としていますが、概念は一般にMVVMパターンに対して機能します。

http://compositewpf.codeplex.com/releases

もう1つリストに追加します。TonySneedによるSimple MVVM Toolkit(本当にあなたのもの): http:// simplemvvmtoolkit。 codeplex.com

ツールキットは、ヘルパークラス、Visual Studioアイテムテンプレート、およびコードスニペットで構成されています。実際のツールキットに加えて、MVVMパターンを使用して基本的なSilverlightアプリを構築する方法に関する段階的な手順を含むサンプルアプリがあります。

Nikhil Kothariが、Silverlight.FXライブラリでそのパターンを使用する方法について投稿しています。 こちらをご覧ください: http://www.nikhilk.net/ViewModel-Pattern-DLR .aspx

最近多くのことを経験しましたが、際立っているのは次の2つです。

ダンワーリン(LIDNUG):

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

ジョンパパ(PDC 2010):

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

ViewModelの最良の説明は、ヨーロッパでのMVC講演中にScott Hanselmanによって与えられました。

ワンライナー応答とは、特定のビューが必要とするすべての必要なデータを送信し、2つの場合にビューから変更されたデータを受信するためだけに作成されるモデル(クラス)です。ウェイバインディング。

Silverlightの実際のMVVMに関する私の記事をご覧ください。ただし、新規参入者向けではなく、実際のプロジェクトに携わっている専門家の開発者を主に対象としています。

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

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top