Ведущий Диалог
Зарегистрирован: 11 May 2007
Сообщения: 155
Примеры кода: 0
|
Re: Добавить свое событие в контрол - КАК? |
14 February 2008 12:28 |
|
|
|
|
AibА вызов ClientScript.GetPostBackEventReference у Вас где? И интерфейс в не реализовали. ----------------------------------------------------------------------
Any fool can write code that a computer can understand. Good programmers write code that humans can understand. © Martin Fowler.
Про динамические контролы
IPostBackEventHandler конечно-же я реализовал - правил ручками текст и стёр. А вот GetPostBackEventReference - нет. Я только впервые столкнулся с необходимостью реализовать свой колбэк.
Спасибо Вам персональное, а также AAlexey.
И nKognito (за участие).
Проблема решилась добавлением в OnInit (нужно подумать может лучше в другое событие):
ClientScriptManager cs = this.Page.ClientScript;
this.Attributes.Add("onclick", cs.GetPostBackEventReference(this, this.ID.ToString()));
Просьба еще немного помочь (уже крыша едет):
<hc:Trigger runat="server" ID="Trigger1" DefaultText="Да" AlternateText="Нет" OnClick="Trigger1_Click" />
в кодбихайнд в OnLoad я обрабатываю клик - без проблем.
Если удалить OnClick="Trigger1_Click" ессно ничего не происходит, однако CallBack вызывается.
Теперь вопрос: хочу намертво "зашить" клик на работу триггера DefaultText/AlternateText, не могу понять, где мне обрабатывать клик? И как его сделать недоступным для изменения?
Спасибо!
|
|