まず、こちらの質問と回答をご覧ください。回答で提供されたコードには への呼び出しがないPrintDialog.Showdialog()
ため、この例ではダイアログ オブジェクトを使用して何かをすばやく印刷しています。
ただし、PrintDialog
それ自体がビューであり、印刷するビジュアルがビューであるため、これはすべてビューに入れる必要があると思います。ビューのデータはViewModelにあり、印刷するビューはビューによって構築され、次にプリンターに送信されます(ビューがビジュアルを画面に送信するのと同じように)。このようにMVVMを考えるのは正しい方法ですか?
PrintDialog をビューからユーザーに表示し、ダイアログをビューモデルに渡して印刷することを考えていましたが、MVVM の背後にあるアイデアを壊しているようです。