私は過去数日間winformsを使用してMVPパターンを試していますが、実際にはわからないことが1つあります。別のビューからサブフォームを作成する方法これは有効なオプションでしょうか。MVPでサブビューをロードする
public class MyForm : IMainFormView
{
private MainFormPresenter pres;
public MyForm() { pres = new MainFormPresenter(this); }
//Event from interface.
public event EventHandler<EventArgs> LoadSecondForm;
public void SomeButtonClick()
{
LoadSecondForm(this, EventArgs.Empty);
}
}
public class MainFormPresenter
{
private IMainFormView mView;
public MainFormPresenter(IMainFormView view) {
this.mView = view;
this.Initialize();
}
private void Initialize() {
this.mView.LoadSecondForm += new EventHandler<EventArgs>(mView_LoadSecondForm);
}
private void mView_LoadSecondForm(object sender, EventArgs e) {
SecondForm newform = new SecondForm(); //Second form has its own Presenter.
newform.Load(); // Load the form and raise the events on its presenter.
}
}
私はあなたがこのパターンを使用してサブフォームをロードし、そしてどのようにサブフォームの最初のページからIDを言う渡すだろうかと主に心配です。
ありがとうございました。