0

プレゼンター内からビュー(つまり、MainForm部分クラス)にあるメソッドをどのように呼び出すと思いますか。ビューが実装し、プレゼンターにDIされるインターフェイスに追加する必要がありますか?

そうでない場合、推奨されるアプローチは何ですか?

ビューでUIメソッドを実行できるようにするために、これらすべてのメソッドをインターフェイスに追加するのは少し奇妙に思えます。

4

1 に答える 1

5

ビューはインターフェースを実装します。プレゼンターは、このインターフェイスをコンストラクター パラメーターとして受け取ります。したがって、このインターフェイスの一部であるメンバーのみをプレゼンター内から呼び出すことができます。ビュー (フォーム) で他のメソッドを定義する場合、それらのメンバーは非公開にする必要があり、プレゼンターはそれらについて何も知らない必要があります。

ビューで UI メソッドを実行できるようにするために、これらすべてのメソッドをインターフェイスに追加するのは少し奇妙に思えます。

これが MVP パターンのしくみです。プレゼンターは、このビューが実装するインターフェイスを介して間接的にビューを操作します。

于 2012-08-13T17:54:33.027 に答える