2014-12-30 2 views
0

Я панель обновления с парой зависимых выпадающих списков. При нажатии кнопки «Отправить» панель обновляется, а выпадающие меню сбрасываются. Пользовательские параметры теряются. Есть ли способ добавить код, который остановит обновление панели обновления от обновления, которую я мог бы включить в событие нажатия кнопки?Как остановить обновление панели обновления при нажатии кнопки?

панель Update:

<asp:ScriptManager ID="ScriptManager1" runat="server" > 
        </asp:ScriptManager> 
        <asp:UpdatePanel ID="UpdatePanel2" runat="server" ChildrenAsTriggers="True"  UpdateMode="Conditional"> 
         <ContentTemplate> 
          <li class="small_link"> .......... 
<li class="small_link"> 
            <div class="li_div"> 
             <asp:Button ID="btnInventoryRpt" runat="server" Text="Load Report" OnClick="btnInventoryRpt_Click" 
             CausesValidation="false" UseSubmitBehavior="False" /> 
            </div> 
           </li> 
          </ContentTemplate>    
         </asp:UpdatePanel> 

Кнопка Нажмите Событие:

protected void btnInventoryRpt_Click(object sender, EventArgs e) 
    { 

      load_inventory_report(); 

    } 
+0

Вы должны поместить 'Button' из стороны' UpdatePanel ' – Avijit

+0

[Microsoft - примеры] (http://msdn.microsoft.com/en-us/library/system.web.ui.updatepanel (v = vs.110) .aspx) здесь несколько примеров с обратной записью Asynchronus с выпадающим списком list –

+0

Avijit - он по-прежнему обновляет панель обновления, когда я размещаю кнопку на стороне панели обновления. – briskovich

ответ

0

Это звучит для меня, что вы связывание ваших DropDownLists в случае загрузки страницы, но вы забываете о постбэк.

protected void Page_Load(object sender, EventArgs e) 
    { 
     if (!Page.IsPostBack) 
     {     
      //Bind your drowdown list here 
     } 
    } 

Но вы можете использовать немного больше кода от вас, чтобы быть уверенным.

+0

Я пробовал это, и это предотвращает мой выбранный индекс измененных событий, чтобы не запускать панель обновления. – briskovich

0

В вашей странице asp.net удалить атрибут ChildreAsTrigger из вашего UpdatePanel тега. Вам нужно только UpdateMode = «Условный», чтобы заставить обновление

<asp:UpdatePanel ID="UpdatePanel2" runat="server" UpdateMode="Conditional" /> 

В вашем случае нажатия кнопки, то вы можете принудительно обновить

protected void btnInventoryRpt_Click(object sender, EventArgs e) 
{ 
    load_inventory_report(); 
    UpdatePanel2.Update(); 
} 
Смежные вопросы