RadWindow(本質的にChildWindow)を持つ機能的なMVVMのパターン化されたSLアプリケーションがあります.ShowDialogを使用してウィンドウを表示するビューのコードビハインドを削除したいと思います。メインビューとウィンドウの両方が同じViewModelにバインドされている場合は、そのViewModelにバインドされます。ShowDialog MVVMLightを使用したRadWindow
ボタンには、MVVMLight RelayCommandを使用するViewModelコマンドと、ビュー内のイベントハンドラの設定状態を処理するコマンドの両方があります。
究極のソリューション/パターンは20回以上再利用されるため、コードビハインドよりも優れたものが得られるはずです。
思考?
private void Button_Click(object sender, System.Windows.RoutedEventArgs e)
{
var window = new RadWindowTest.Controls.ChildWindow1();
window.Closed += new System.EventHandler<Telerik.Windows.Controls.WindowClosedEventArgs>(window_Closed);
window.ShowDialog();
}
恐縮です、ありがとうございます。 MVVMLightメッセージも同様に使うことができると思いますか、DialogServiceはもっと純粋な(無関係な)ものですか? – rusty
明らかにあなたができることはありますが、それは子供の窓であるので、私は方法を呼び出すことがもっと合うと信じています。さらに、メッセージを送信することは、誰がそれに反応するかもしれないかを知らないブロードキャストです。したがって、気をつけなければ複数のダイアログがポップアップすることになります。 – AxelEckenberger
私は議論を感謝します、私はあなたが提案するように向かって動作します。 – rusty