OnInit , FindControl и OnClick
Проявление:
Если создать aspx страницу, в ней LinkButton, он подписать его на событие OnClick, а
в странице в функции OnInit вызвать
Control myControl = Page.FindControl(ctrlName);
,то событие OnClick для всех элементов страницы болше работать не будет
Проблема выявляется в Веб-приложениях .NET 2.0, 3.5
Причина:
Причина в реализации Page.FindControl, которая не просто находит нужнуй контрол, но выполняет некие дополнительные дества и по при этом обнуляет обработчик для события OnClick.
Решение:
Решается написанием собственной функции FindControl, которая будет рекурсивно перебирать элементы страницы без выполнения модификаций
Особая благодарность Артему, который исследовал ошибку и нашел решение
Комментарии
Отправить комментарий