私のアプリケーションにMVVMパターンを使用しています。このモデルは実際には一連のテストを並行して実行し、その結果を含めてテストのステータスをタブで保持します。ステータスと結果をビューに表示する必要があります。私はビューモデルのデザインに立ち往生しています。ビューモデルとモデルを通信するにはどうすればいいですか?
問題は、ビューに表示されるすべての必要なデータが格納されるモデルにクラスとサブクラスの階層がたくさんあることです。これらのデータは動的です。 ビューモデルの設計方法がわかりません。
私はこれらの行に沿って考えていました - ビューに表示されるものを反映するビューモデルで新しいデータ構造を作成し、すべてのビューモデルを取得して必要なデータを取得します。この場合、データが変更されるたびにモデルがビューモデルをどのように更新するのか混乱します。または、データが異なるクラスとサブクラスに格納されている場合、モデルとビューモデルはどのように通信しますか。
モデルは状態を変更したときにイベントを発生させることができますか?理想的にはモデルはダムであり、何か他のものによって操作される。彼らは自分自身を変えてはならない。 –
実際には、一度に複数のテストを実行することができます。つまり、本質的に複数のモデルが一度に表示され、ユーザーは表示するデータを選択できます。モデルが変わるたびにモデルの火を作ることができます。モデルが愚かであると思われる場合、私のデザインに何か問題がありますか?テストを実行するロジックはVMに存在する必要がありますか? – Manoj
すべてのモデルには、イベントを処理し、独自の通知プロパティを変更したビューモデルが必要です。次に、これらの子ビューモデルを含む親ビューモデルを作成できます。 –