0

状況:MainForm(MainPresenterに割り当てられている)が稼働しています。ユーザーがShowFooボタンをクリックします。イベントがMainPresenterに渡され、MainPresenterが新しいFooPresenterとFooViewを作成します。今、どのように進めればよいですか?プレゼンターをどこに作成し、ビューをどこに作成する必要がありますか。最も重要なのは、MDIParentプロパティをどこに設定するかです。(とても太っているので、メインビューで行う必要があると思います。

注:依存関係フレームワークを使用していますが、それは問題とはまったく関係ありません。理想的には、IViewをFormクラスから独立させたいと思います。

4

1 に答える 1

1

私がそれを処理する方法には、FooPresenter (および Foo2Presenter など) を作成できる MainPresenter インターフェイスの関数があります。MainPresenter には、MDI 親の子フォームを適切に設定するためのすべての情報が含まれています。したがって、そこにあることが理にかなっているのはなぜですか。

別の方法として、MainPresenter と FooPresenter をプロパティまたは関数として持つ AppPresenters クラスを用意することもできます。ここで、AppPresenters はプレゼンター クラスを保持し、適切な MDI アプリケーションを作成するためにフォームを結び付ける責任を負います。このアプローチの意味は、アプリケーションが多数の子フォームを持つマスター/親フォームであるという事実が、インターフェイスの設計に反映されていないことです。

私の意見では、2 つのアプローチの違いはごくわずかです。どちらも異なるスタイルの UI に簡単に適応させることができます。したがって、あなたとあなたのアプリケーションにとってどちらがより理にかなっているでしょうか。

于 2009-10-15T12:18:25.293 に答える