Мы раздуваем событие. В докладчике вы регистрируете это событие:
public event PresenterEventHandler Message;
А затем поднимите его так:
PresenterEventArgs pe = new PresenterEventArgs("Error message", Status.Error);
this.Message(this, pe);
Тогда в поле зрения:
protected override void OnInit(EventArgs e)
{
this.presenter = new MyPresenter(this, MyBusinessService.Instance);
this.presenter.Message += new PresenterEventHandler(presenter_Message);
}
void presenter_Message(object sender, PresenterEventArgs pe)
{
// display error message
}
Таким способом вы можете возвращать различные виды состояний обратно в представление, а не только сообщения об ошибках. У нас есть Успех, Ошибка, Заблокировано, Предупреждение, Помощь.