私の WPF (4.0) アプリケーションでは、Viewmodel-firstパターンを使用しています。したがって、ビューモデルが最初に作成され、次にデータ テンプレートを使用してビューが作成されます。実際のデモはこちらにあります。
ここで、作成されたビュー (コード ビハインド) 内から、viewmodel のプロパティを変更する必要があります。アプローチではView-first、名前付きビューモデル インスタンスにアクセスするだけです。ただし、このViewmodel-firstアプローチではこれが許可されません。ビューモデルはありますが、ビューはそれが何であるかを気にしません。
悪い:
確かに を取得して使用することはできますがDataContext、それによってビューとビューモデルが効果的に結合されます。
private void MyView_Loaded(object sender, RoutedEventArgs e)
{
this.viewModel = DataContext as MyViewModel;
}
これには推奨されるパターンが必要です。コマンド?メッセージ?助けてください!
Q: アクティブなビューモデルを変更 (プロパティを設定) するにはどうすればよいですか?