mvvmパターンを使用する WPF アプリケーションがあり、プリンシパル ビュー モデルからダイアログを表示する必要があります。
ビュー モデルを含むセカンダリ ビューがあり、ダイアログを作成するには 2 つのオプションがあると思います。
オプション1
プリンシパル ビュー モデルでは、次のことができます。
- ダイアログのビューを作成する
- ダイアログのビュー モデルを作成します
- ビュー モデルをビューに割り当てる
- 表示ダイアログ
オプション 2
プリンシパル ビュー モデル:
- ダイアログのビューモデルを作成する
ダイアログのビューモデルのコンストラクターで:
- ダイアログのビューを作成する
- ビュー モデルをビューに割り当てます。この場合は「これ」を割り当てます
- 表示ダイアログ
MVVM では、ビュー モデルはビューについて何も知る必要がないことはわかっていますが、実際には、ビュー モデルにビューにリンクするプロパティがなく、コンストラクターで作成され、ビューモデルはビューについて何も知らない最終状態。
ただし、4 行を必要とするオプション 1 (ビューの作成、ビュー モデルの作成、割り当てビュー モデルをビューに追加し、ダイアログを表示します)。
mvvmパターンに従いたい場合、2 番目のオプションは悪い考えではないと考えるのは間違っていますか?