Когда показывать представление в шаблоне winform MVP - PullRequest
1 голос
/ 29 марта 2010

Мне интересно, где вызывать ShowDialog () в шаблоне MVP, Presenter обычно определяется как:

public Presenter(IView view, IModel model)
{
    this.View = view;
    this.View.Presenter = this;
    this.Model = model;
}

И я хочу показать View Modelly, вызвав ShowDialog (), тогда где мне вызвать ShowDialog ()?

public void Foo()
{
var view = New View();
view.ShowDialog();
var presenter = new Presenter(view, model);
}

Но если я позвоню ShowDialog() до создания докладчика, .ShowDialog() не вернется до закрытия представления, тогда я должен назвать это в Presenter, но я чувствую, что это не шаблон, чтобы звонить ShowDialog() в докладчике

Итак, что является лучшим решением или можно вызывать ShowDialog () в докладчике?

1 Ответ

2 голосов
/ 29 марта 2010

почему бы и нет

var presenter = new Presenter(view, model);
view.ShowDialog();

И нет, я не думаю, что вызов ShowDialog в Presenter является анти-паттерном

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...