Постбэк ASP Tabpanel только на одной вкладке

У меня есть панель вкладок с элементом управления календарем на 4-й вкладке, но когда я выбираю дату, обратная передача заставляет панель вкладок возвращаться на первую вкладку вместо 4-й, из которой она пришла. Есть ли способ заставить его вернуться на вкладку, на которой включен элемент управления календарем, а не вернуться к первой вкладке?

Я знаю, что установка autoPostback на true в TabContainer сделает это, но это означает, что он перезагружается при каждом изменении вкладки, а не только той, которую я хочу.

Любые идеи ?


person Community    schedule 06.11.2008    source источник
comment
На самом деле для этого нужны были оба ответа, но я могу выбрать только один в качестве принятого ответа, извините за это. Теперь работает отлично спасибо.   -  person    schedule 07.11.2008


Ответы (2)


Обертывание содержимого четвертой вкладки в элементе управления UpdatePanel должно помочь.

<ajaxToolkit:TabPanel runat="server" ID="tabCS" HeaderText="Country Settings">
  <ContentTemplate>
    <asp:UpdatePanel runat="server" ID="upCountry" UpdateMode="Conditional">
      <ContentTemplate>

          ... content and calendar

       </ContentTemplate>
    </asp:UpdatePanel>
  </ContentTemplate>
</ajaxToolkit:TabPanel>
person Dan Maharry    schedule 06.11.2008

Вот лучшая практика, которую я нашел.

Если другие вкладки на панели вкладок не нуждаются в обновлении, поместите содержимое каждой панели только на панель обновления. Если вам нужно обновить другие панели, вы можете программно вызвать метод для их обновления.

Для этого есть две веские причины: 1.) Размещая панели обновлений на вкладках, вы будете иметь меньше битов для возврата с сервера. 2.) Программный вызов методов обновления позволяет лучше понять, что именно вы предоставляете конечному пользователю, и вы не забудете обновить данные.

Помните, что если вы используете несколько панелей, чтобы изменить режим обновления с постоянного на условный, чтобы на клиенте обновлялась только актуальная информация.

Кроме того, если вы хотите поместить весь элемент управления панели вкладок в панель обновления, вам может потребоваться добавить любое форматирование, которое выполняется в файле CSS, поскольку мой опыт показывает, что он не может сохранить форматирование по умолчанию с его обновлениями.

Если вам нужна дополнительная информация или пример кода, просто напишите мне.

Андрей

person Middletone    schedule 07.11.2008