У меня следующая ситуация:
Мастер-страница MyMaster.Master
Страница содержимого Content.aspx
A UserControl MyUserControl.ascx
MyUserControl.ascx используется в Content.aspx и добавляется программно. На странице содержимого используется MyMaster.Master
MyMaster.Master имеет переменную, к которой я могу получить доступ из Content.aspx, так как у меня установлена директива @MasterType. Я хочу сделать следующее:
1) Установите значение в MyUserControl.ascx
2) Значение доступа из Content.aspx
3) Установить значение в MyMaster.Master
Шаг 2 реализован в PageLoad content.aspx следующим образом:
Control ucControl= LoadControl("/UserControls/MyUserControl.ascx");
UserControls_MyUserControl myUC = ucControl as UserControls_MyUserControl;
//Do some caching stuff here
if (myUC != null)
myUC.PreRender += new EventHandler(myUC_PreRender);
Обработчик PreRender просто устанавливает значение в MyMaster.Master в значение true. В MyMaster.Master я проверяю это значение в PageLoad и пытаюсь отобразить что-то, если оно истинно. Это не работает.
Я подозреваю, что это как-то связано с жизненным циклом страницы, но я не могу понять, какая часть неправильная.
Любая помощь высоко ценится.
Спасибо