適当にMVPVMメモ

  • MVVMではVMが肥大化しがち VMのやっていることの大部分をPに委譲することでわかりやすくなる
  • PがVとVM両方を知っている(保有している)ので
    Messenger DataTemplateなどの機構を使わずViewのメソッドを直接呼び出すことが出来る。
  • Pから見るとVもVMも大差ないので本来Mにあるべきロジックを含むコントロール(ActiveX等?)を使う(使わざるを得ない)場合もきれいに掛ける

 

  • View
    • ViewModelの各プロパティコマンドとバインドする。
  •  

  • ViewModel
    • INotifyPropertyChanged
    • データバインディング用のプロパティ
    • イベント、コマンド等(の変数・プロパティ)を保持
  •  

  • Presenter
    • V,VMの参照を保持,あとMも
    • new Presenter(new View(),new ViewModel());
    • V-VM間の接続(View.DataContext = ViewModel)
    • 接続解除(View.DataContext = null;)
    • Mの関数を呼び出し、その結果をVMに代入
    • VMのイベント、コマンド等の中身を設定
  •  

  • Model
    • その他
広告

akatukisiden について

フリーランスプログラマ 使用言語はC++,C#とそのつなぎのC++/CLI 専門はクライアントアプリ開発
カテゴリー: C#, MVVM タグ: , , , , , パーマリンク

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中