私は、ViewModel(実際に削除したいかどうかを確認するため)にMessageBox.Show()を呼び出してWPFアプリケーションを取得しました。 これは実際にはで動作しますが、はMVVMのグレインに反するので、ViewModelはViewで何が起こっているかを明示的に判断すべきではないからです。MVVMでMessageBox.Show()の機能をどのようにして正常に実装しましたか?
だから今、私は最高の私のMVVMアプリケーションでMessageBox.Show()機能を実装する方法を、考えていますオプション:
は私がテキストでメッセージを持っている可能性があり、「よろしいです。 ..? "私のXAMLのBorderにある2つのボタンYesとNoのすべてと、テンプレートにトリガーを作成して、AreYourSureDialogueBoxIsVisibleというViewModelPropertyに基づいて折りたたんだ/表示するようにしてから、このダイアログボックスが必要なときにAreYourSureDialogueBoxIsVisibleを"true"を返し、ViewModelでDelegateCommandを介して2つのボタンを処理します。
また、XAMLのトリガーでこれを処理しようとすると、実際に削除ボタンでメッセージとボタンが表示され、[はい]ボタンが実際に削除されました。
どちらのソリューションは)MessageBox.Show(と数行のコードにするために使用するもののために複雑すぎるように見えます。
MVVMアプリケーションでどのように対話ボックスを正常に実装しましたか?
同様の質問:http://stackoverflow.com/questions/315180/model-view-presenter-and-modal-dialog-boxes-how-to –