У меня есть настраиваемый элемент управления, в котором есть элемент управления RadioButtonList. При выборе одного из переключателей управление выполняет обратную передачу, чтобы выполнить некоторую работу с серверами, и страница перезагружается с правильным выбранным радиобарабаном. Это отлично работает на моей тестовой странице.asp.net 2.0 пользовательский контроль состояние состояния проблема
Теперь я переместил элемент управления на страницу, на которой он будет жить, и когда будет выбран радиобъектив, происходит обратная передача, но когда страница перезагружает радиокамеру, она больше не будет выбрана. Таким образом, кажется, что выбор больше не сохраняется в viewstate.
Любые указания относительно того, какие аспекты новой страницы я должен смотреть, были бы очень благодарны.
Приветствия
Adendum - немного подробнее
Спасибо за совет Стивен
Контроль был первоначально разработан в качестве контроля веб-пользователя с помощью конструктора, очень простую реализацию, на стороне сервера обработчики для onload и когда изменяется радиобъект. Отдельная dll для кода позади и ascx. Затем я преобразовал его в пользовательский элемент управления, чтобы вытащить ascx в DLL с помощью скомпилированного кода.
Я не динамически создаю элемент управления на тестовой странице, есть тег и <% @ Зарегистрируйтесь ... blah blah> наверху в aspx, чтобы сделать это. Список радиообмена был перетаскиван и вставлен в ascx с помощью конструктора, поэтому я не реализовал код для его создания. Так что все очень ваниль. Я действительно ищу различия, которые я должен искать на страницах, которые используют элемент управления, чтобы понять, почему он работает на тестовой странице, но не на странице сайта, в которой он должен находиться.
* ********** Дополнение *********** У меня было короткое время, чтобы решить эту проблему и пришлось передать ее другому разработчику. Когда я узнаю от него, что такое решение, я отправлю его здесь. Большое спасибо всем за их вклад.
*********** Ответ ************* Вот ответ от разработчика, который взял на себя ответственность.
Ваш контроль над викториной был прекрасным помощником, причина, по которой значения не сохранялись при обратной передаче, была из-за унаследованной функциональности в базовом классе, когда вы добавляете ее вживую. По сути, это метод DataBind в методе загрузки страницы, который в жизненном цикле страницы до того, как вызваны методы обратной передачи, так что он сбросит значения выпадающих списков. В итоге я создал некоторые свойства viewstate, в которых были сохранены значения выпадающих меню. Значит, это было не то, о чем вы могли знать.
Использует ли страница AJAX? – SLaks
Нет, это простая страница asp.net. – Rich
@SLaks, если на странице используется Ajax, что я должен искать? Я знаю, что я сказал, что это не так, но мне любопытно, что рано или поздно мне придется снова заниматься аяксом. – Rich