5

私は WPF アプリケーションで mvvm パターンを使用しており、データベースは使用していません。ユーザーがいくつかのExcelファイルをアップロードするビューUploadViewと、これでUploadViewModelという名前のビューモデルがあるという問題に行き詰まりました。アップロードされたファイルデータを読み取り、それをUploadvViewModalsクラスのオブジェクトであるデータテーブルオブジェクトに保持しますが、正常に動作していますが、私の問題は、アップロードされたデータ(データテーブルオブジェクト)を別のViewmodalを持つItemsControlの別のビューに表示する必要があることです。WPF と Windows の初心者であるため、進め方がわかりません。これを行うにはどのような方法がありますか?

4

3 に答える 3

3

EventAggragation(メディエーターパターン)で戦利品を取ることができます

開始する他のチュートリアル

于 2012-09-17T13:14:04.837 に答える
1

2つのビューモデルがどれだけ緩く結合されているかに応じて、これを行う方法はいくつかあります。アップロードビューモデルの2番目のビューモデルへの直接参照がある場合は、このビューモデル/ビューを表示するときにデータを渡すことができます。

これは、a)データが2番目のビューモデルの要件であり、b)アップロードビューモデルが2番目のビューモデルの作成を担当している場合に最も賢明なオプションのように思われます。この場合、2番目のビューモデルのコンストラクターで依存関係としてデータを渡すことができます。

別のアプローチには、イベントアグリゲーターをメディエーターとして使用して2つのビューモデル間でデータを渡すことが含まれますが、最初のアプローチを使用します。

于 2012-09-17T13:15:56.990 に答える
1

MVVMを使用している場合は、実際にはModelクラスのExcelファイルにアクセスしている必要があります。ViewModelsは通常、データにアクセスするためではなく、モデルデータをViewsが表示できる形式に変換するために使用されます。

于 2012-09-17T13:16:38.050 に答える