powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Динамически подключаемые контролы.
4 сообщений из 4, страница 1 из 1
Динамически подключаемые контролы.
    #32476982
maxapet
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Имеется такая структура: базовая страница, наследник класса Page , которая разделена на области - меню, контент и т.д. По команде меню устанавливается свойство Mode базовой страницы, определяющее какой контент будет отображаться.

Последовательность действий такая:
1) В процедуре CreateChildControls создаются все необходимые контролы, определяемые свойством Mode , и заносятся в соответствующие разделы базовой страницы.
2) Обрабатывается событие выбора пункта Menu , которое, если необходимо, устанавливает новое значение Mode и взводит флаг, извещающий о том, что режим изменён.
3) В событии PreRender проверяется, изменилось ли свойство Mode . И если оно изменилось, то контрол, созданный в CreateChildControls удаляется, а нужный контрол создаётся и помещается на его место.

И это работает. За одним исключением - если контрол как-то реагирует на события (например, DataGrid со страницами или Calendar ), то первое нажатие мыши он пропускает, т.е. DataGrid не переключает страницы, а Calendar не отмечает выбранную дату. На последующие нажатия реакция нормальная. Оно понятно, почему так происходит - нет ViewState для этих компонент, пока они не будут загружены на страницу. Если компонент создавать в CreateChildControls , то всё работает нормально. Но событие от меню обрабатывается позже, чем вызывается процедура CreateChildControls , поэтому неизвестно, какой компонент создавать.
Как заставить их - DataGrid со страницами или Calendar - работать нормально с первого нажатия? Или как на этапе выполнения CreateChildControls узнать какой компонент создавать? А может быть есть другое решение этой проблемы?
...
Рейтинг: 0 / 0
Динамически подключаемые контролы.
    #32478601
maxapet
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Жаль, что ни у кого нет никаких идей по этому поводу...
...
Рейтинг: 0 / 0
Динамически подключаемые контролы.
    #32478724
Фотография hDrummer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
трудно так навскидку сказать, но может быть писать в куки или переменную сессии какой-то флаг и уже опираться на его значение?
...
Рейтинг: 0 / 0
Динамически подключаемые контролы.
    #32479864
maxapet
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дело было в том, что я не задавал значения ID контролов. Как только я их задал, так всё сразу заработало как я и хотел!
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Динамически подключаемые контролы.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]