У меня есть пользовательский элемент управления, который я явно вызываю с страницы aspx. В Page_Load страницы ASPX я имею следующее:Пользовательское управление потерянное состояние
myControl = (DynamicTable)Page.LoadControl("../inc/DynamicTable.ascx");
Тогда в моем коде, где я хочу, чтобы это выполнить контроль, у меня есть это:
pnlESDDEnrolled.Controls.Add(myControl);
где pnlESDDEnrolled
является Я загружаю его для отображения.
Итак, я запускаю страницу aspx, она связывается с пользовательским элементом управления, заполняет элемент управления, возвращается на страницу aspx, и страница отображается с помощью элемента управления пользователя посередине. Все хорошо.
Проблема возникает при внесении обновлений в пользовательский элемент управления. Имейте в виду, что другие данные также обновляются на странице, а кнопка обновления находится на странице, а не в элементе управления. В любом случае, когда кнопка обновления нажата, на странице запускается событие button_click
, но обновления, которые я сделал в пользовательском элементе управления, теряются. Поскольку страница загрузила пользовательский элемент управления, а затем usercontrol выполнил метод выгрузки страницы, страница больше не знает о пользовательском элементе управления. Таким образом, когда кнопка обновления на странице нажата, я думаю, я не совсем уверен, что происходит с обновленными данными в пользовательском элементе управления. Все, что я знаю, это то, что он потерян. Я работаю над этим в течение огромного количества времени, любая помощь будет очень признательна.
Большое спасибо за ответ. Вот что я вижу. Синьон - логика на странице aspx, на которой я вызываю pnlESDDEnrolled.Controls.Add (myControl); для ссылки на пользовательский элемент управления Page_Load, вызываемый в пользовательском элементе управления, заполняет данные в пользовательском элементе управления Saveviewstate - выполняется, но я сохраняю состояние только как page_unload - я ничего не делаю здесь. На странице aspx отображается экран – seattlesteve
UPdates создаются на странице aspx, и кнопка управления пользователем и обновления на странице aspx нажата. Состояние загрузки отображается в пользовательском элементе управления. Код для поиска обновлений в пользовательском элементе управления вызывается, но обновления теряются. Сохраняя состояние состояния в пользовательском элементе управления Я выполняю myControl = (DynamicTable) Page.LoadControl ("../ inc/DynamicTable.ascx"); при загрузке страницы на странице aspx – seattlesteve