0

私はWPFでMVPを使用していますが、設計上の疑問に遭遇しました。これについてあなたの意見を聞きたいと思います。

ある時点で、ビューを更新して、ビューの読み込み時など、同じ初期クエリを実行する必要があります。ビューのDataContextは私のプレゼンターであり、ビューにバインドされているコレクションとその他の変数がいくつかあります。ビューを更新する必要があるときは、コレクションと変数をクリアし、DataContextをnullに設定しています。その後、新しいデータをフェッチし、コレクションにデータを入力して、DataContextを設定します。これはこれを達成するための最良の方法ですか?

これに関する問題は、アプリが大きくなると、変数をリセットするのを忘れてしまうのではないかと心配していることです。理想的なのは、持っている変数を気にせずに、何らかの方法でビューを再読み込みすることです。

よろしくお願いします。

4

1 に答える 1

1

Jay さん、WPF の設計哲学は非常にデータ駆動型です。その事実を考えると、DataContext を null に設定したり、ビューをリロードしたりする必要はありません。代わりに、監視可能なコレクションを使用するか、DataContext オブジェクトに INotifyPropertyChanged を実装して、データが消去および更新されることをビューに警告することができます。

于 2010-03-23T11:50:02.910 に答える