そのため、最初の試みはコードビハインドからすべてを実行し、現在はボックス情報のMVVMのガイダンスに従って、MVVMパターンを使用するようにコードをリファクタリングしようとしています。
ビュークラスに一致するビューモデルクラスを作成し、コマンドから始めて、コードをコードビハインドからビューモデルに移動しています。
私の最初の問題は、データが変更されていない場合にウィンドウを閉じる「閉じる」ボタンを実装しようとしています。CloseCommandを装備して、「onClick」メソッドを置き換えました。コードを実行しようとする場所を除いて、すべて問題ありませんthis.Close()
。明らかに、コードがウィンドウから通常のクラスに移動されたため、「this」はウィンドウではなく、したがって閉じることができません。ただし、MVVMによると、ビューモデルはビューを認識していないため、を呼び出すことはできませんview.Close()
。
誰かがviewmodelコマンドからウィンドウを閉じる方法を提案できますか?