Model-View-ViewModel Pattern

2017/12/02 WPF::Prism
UIのデザインパターンの一つ。
他にはMVC(Model-View-Controller)、MVP(Model-View-Presenter)など。
ロジックからViewを切り離すことによって、ロジックのテストをしやすくする。

PrismにおけるMVVM

PrismはどのUIパターンとも共存できるよう設計されているけれど、WPFの特性を考えるとMVVMが一番お勧め。

MVVM Code Sample using the Prism Library 5.0 for WPF
上記の下記ファイルを参照
QuestionnaireView.xamlViewUI
QuestionnaireView.xaml.csViewQuestionnaireViewのpartial class。空。ここにロジックを書くとViewが絡むのでテストしづらい。XAMLだけでは表現しきれない複雑なアニメーションのロジック等を書く場合はここ。
QuestionnaireViewModel.csViewModelViewに必要なデータや状態を保持。BindableBaseを継承
Questionnaire.csModelデータの型
OK キャンセル 確認 その他