Порядок событий управления сервером ASP .Net
Вопрос
Каковы события серверного элемента управления ASP .Net и как их порядок связан с событиями содержащей страницы?
Конкретная проблема заключается в том, что я ищу событие внутри серверного элемента управления, которое срабатывает до Страница_Загрузка событие содержащей страницы.
Решение
Что касается того, как они связаны с событиями страницы, по крайней мере, для Init и Load:
«Хотя и инициализация, и загрузка рекурсивно выполняются для каждого элемента управления, они происходят в обратном порядке.Событие Init (а также событие Unload) для каждого дочернего элемента управления происходит до того, как соответствующее событие будет вызвано для его контейнера (снизу вверх).Однако событие загрузки контейнера происходит до событий загрузки его дочерних элементов управления (сверху вниз)».
Другие советы
Проверьте это страница.Это позволит вам узнать, какие события и когда срабатывают.Похоже, вы могли бы использовать Предварительная загрузка событие.
Это должно помочь: http://msdn.microsoft.com/en-us/library/ms178472.aspx
Я думаю, вы ищете PreLoad.
Это небольшая проблема, поскольку элемент управления может быть помещен внутри страницы после события «Page_Load».
В одном моем историческом проекте я получил все страницы из своего класса «PageEx:Система.Веб.UI.Страница».У которого было свойство «CurrentState» типа «enum PageStates { PreInit, Init, PostInit, PreLoad, /* и т. д.».*/ }".Тогда все мои элементы управления смогли распознать состояние цикла страниц.
Более длинный список есть на Порядок событий ASP.NET 2.0 (обратите внимание, что это для версии 2.0).