私が取り組んでいるプロジェクトに MVP パターン (Web フォームを使用) を実装しようとしていますが、イベントの後に何をすべきか、特にグリッドビューから発生したものに行き詰まっています。現在、view はインターフェイスを実装しているため、プレゼンターはビューでメソッドを呼び出すことができます。
私の gridview には、基本的にいくつかの削減された従業員オブジェクトが含まれており (ただし、これは認識されていません)、それぞれに ID があり、グリッドで非表示にする必要があります。
グリッド行で特定のボタンが押されると、異なるイベントが発生する場合があります (削除、ジョブへの追加など)。プレゼンターは、機能を実行するために従業員 ID にアクセスする必要があります (おそらく、この ID を使用してサービス レイヤー コマンドが起動されます)。ビューをパッシブに保とうとしていますが、この例では不可能だと思います。
私の見方では、これを実行できる方法はごくわずかです。
グリッド行の選択時に、ビューの状態 (グリッド行 ID ではありません) 内の「選択された ID フィールド」にデータを入力し、通知プレゼンター (イベントまたはプレゼンター呼び出し) を起動します。プレゼンターはこのフィールドにアクセスします。[イベントは gridview から ID を推測する必要があります] を選択します。
プレゼンター通知のパラメーター (イベントを使用してプレゼンターに通知する場合はイベント引数) を介して、ID を直接プレゼンターに渡します。[イベントは gridview から ID を推測する必要があります] を選択します。
これがドロップダウン リストの場合は、GetSelectedValue を使用するだけで簡単に作成でき、これにラッパー メソッドを使用できます (ビュー インターフェイス メソッドを実装します)。
お役に立てれば幸いです。
ありがとう。