У меня есть usercontrol, который вызывает событие после связи с веб-службой. Родитель обрабатывает это событие при поднятии. Что я думал, что был бы правильным подходом, чтобы передать объект, возвращенный из webservice родительскому, как eventargs ???Как передать объекты в EventArgs
Если это правильно, я не могу найти инструкции о том, как это сделать.
UserControl
public event EventHandler LoginCompleted;
потом после возвращения службы БИЗ объекта:
if (this.LoginCompleted != null)
{
this.LoginCompleted(this, new EventArgs() //this is where I would attach/pass my biz object no?);
}
Родитель
ctrl_Login.LoginCompleted += ctrl_Login_LoginCompleted;
....snip....
void ctrl_Login_LoginCompleted(object sender, EventArgs e)
{
//get my object returned by login
}
Итак, мой вопрос в том, каким будет «одобренный» метод возврата объекта пользователя родительскому объекту? Создайте класс свойств, который все может получить и разместить там?
Это билет! Позвольте мне реализовать и вернуться. – GPGVM
Вы бы хотели, чтобы собственность была чем-то иным, чем только для чтения. IE никогда не бывает ситуации, когда вы захотите установить ее иначе, чем через конструктор? – GPGVM
@ user1278561: Возможны два случая: (1) Класс, который вызывает событие и создает экземпляр, хочет изменить это свойство. Этого не произойдет, потому что экземпляр не сохраняется нигде, он напрямую передается обработчику. (2) Обработчик событий хочет изменить это свойство. Вы не хотите этого делать, потому что другие подписчики этого события теперь получат другой экземпляр, чем тот, который предоставил класс повышения. –