Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности

Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
12.04.2004, 07:58
|
|||
|---|---|---|---|
Динамически подключаемые контролы. |
|||
|
#18+
Имеется такая структура: базовая страница, наследник класса Page , которая разделена на области - меню, контент и т.д. По команде меню устанавливается свойство Mode базовой страницы, определяющее какой контент будет отображаться. Последовательность действий такая: 1) В процедуре CreateChildControls создаются все необходимые контролы, определяемые свойством Mode , и заносятся в соответствующие разделы базовой страницы. 2) Обрабатывается событие выбора пункта Menu , которое, если необходимо, устанавливает новое значение Mode и взводит флаг, извещающий о том, что режим изменён. 3) В событии PreRender проверяется, изменилось ли свойство Mode . И если оно изменилось, то контрол, созданный в CreateChildControls удаляется, а нужный контрол создаётся и помещается на его место. И это работает. За одним исключением - если контрол как-то реагирует на события (например, DataGrid со страницами или Calendar ), то первое нажатие мыши он пропускает, т.е. DataGrid не переключает страницы, а Calendar не отмечает выбранную дату. На последующие нажатия реакция нормальная. Оно понятно, почему так происходит - нет ViewState для этих компонент, пока они не будут загружены на страницу. Если компонент создавать в CreateChildControls , то всё работает нормально. Но событие от меню обрабатывается позже, чем вызывается процедура CreateChildControls , поэтому неизвестно, какой компонент создавать. Как заставить их - DataGrid со страницами или Calendar - работать нормально с первого нажатия? Или как на этапе выполнения CreateChildControls узнать какой компонент создавать? А может быть есть другое решение этой проблемы? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
13.04.2004, 10:29
|
|||
|---|---|---|---|
Динамически подключаемые контролы. |
|||
|
#18+
Жаль, что ни у кого нет никаких идей по этому поводу... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
13.04.2004, 11:17
|
|||
|---|---|---|---|
Динамически подключаемые контролы. |
|||
|
#18+
трудно так навскидку сказать, но может быть писать в куки или переменную сессии какой-то флаг и уже опираться на его значение? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=18&mobile=1&tid=1395785]: |
0ms |
get settings: |
8ms |
get forum list: |
20ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
33ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
47ms |
get tp. blocked users: |
2ms |
| others: | 266ms |
| total: | 396ms |

| 0 / 0 |
