2

ログインに使用する子ウィンドウがあります。以前は、コードの大部分がウィンドウの分離コードにありました。MVVM モデルに適合するようにすべてをリファクタリングしました。完了時に子ウィンドウを閉じることができないことを除いて、すべて機能しています。

VMからこれを達成する方法を調べましたが、試したことはすべてうまくいきませんでした。

何か案は?

4

1 に答える 1

2

Finishedビューモデルにイベントを追加します。OnFinished閉じる必要があるときにメソッドを呼び出します。

public event EventHandler Finished;
protected void OnFinished()
{
    if (Finished != null)
        Finished(this, new EventArgs());
}

子ウィンドウの背後にあるコードからイベントにサブスクライブし、実際にウィンドウを閉じます。

ViewModel.Finished += (s, e) => Close();

も参照してください

MVVMフレンドリーなダイアログ戦略の作成

于 2013-03-22T02:47:23.560 に答える