На каком этапе жизненного цикла элемента управления Asp.net или события клиент, идентификатор разрешаются - PullRequest
0 голосов
/ 14 сентября 2011

Я разработал серверный элемент управления, который является пользовательским элементом управления, наследуемым от checkboxlist, и реализует IScriptControl. Я использую элементы управления id, clientId, чтобы установить некоторые свойства, используемые для рендеринга в клиенте во время конструктора элементов управления, но, черт возьми, оба имеют значение nullкогда я их отладил.Так что должно быть что-то не так, что это?

Ответы [ 2 ]

2 голосов
/ 05 октября 2011

Именно на этапе Pre_Render вы можете получить фактические свойства clientID и ID

public override void Pre_Render()
{

//control.ClientID and control.ID are available now

}
0 голосов
/ 14 сентября 2011

У Page есть событие InitComplete, которое можно использовать за пределами элемента управления, но сам элемент управления должен иметь события Init и Load только на достаточно раннем этапе жизненного цикла, чтобы задействовать его свойства

если вы устанавливаете другие свойства внутри элемента управления, я, вероятно, переопределил бы метод OnLoad элемента управления:

protected override void OnLoad(EventArgs e)
{
    base.OnLoad(e);
    //do your property setting here
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...