2017-02-09 92 views
0

在我的應用程序中,我有導出按鈕,當我點擊編輯命令中的網格視圖時,我想在啓用後禁用導出按鈕。我禁用編輯命令中的導出按鈕,但當我點擊編輯按鈕時,它顯示在分鐘秒內禁用和頁面回發後它啓用如何禁用導出按鈕有或沒有回發時,我點擊編輯命令。 我的代碼:如何在asp.net中單擊gridview編輯按鈕時禁用導出按鈕

<asp:UpdatePanel ID="panl1" runat="server"> 
    <ContentTemplate> 
     <asp:Panel ID="pnl1" runat="server"> 
      <asp:Button ID="btnExport" runat="server" OnClick="btnExport_Click" Text="Export" /> 
     </asp:Panel> 
    </ContentTemplate> 
</asp:UpdatePanel> 
<triggers> 
    <asp:PostBackTrigger ControlID="btnExport" /> 
</triggers> 

<asp:GridView ID="GridView2" runat="server" Width="100%" CssClass="mydatagrid" HeaderStyle-CssClass="header" RowStyle-CssClass="rows" AutoGenerateColumns="false" 
    EmptyDataText="No files uploaded" OnRowCommand="GridView1_RowCommand" OnRowDataBound="GridView1_RowDataBound" OnDataBound="GridView1_DataBound"> 
    <Columns> 
     <asp:TemplateField HeaderText=" "> 
      <ItemTemplate> 
       <asp:ImageButton ID="Btn1" runat="server" Text="Edit" CommandName="mybutton" Width="20px" ImageUrl="~/images/page_white_edit.png" ToolTip="Edit" /> 
      </ItemTemplate> 
     </asp:TemplateField> 
    </Columns> 
</asp:GridView> 

請告訴我,謝謝。

+0

你可以提供你的頁面在你點擊GridView的按鈕之前和之後的屏幕截圖 – CurseStacker

+0

Hi @CurseStacker,當我點擊編輯圖像時,我添加了我的gridview圖像,只是它顯示禁用,並在頁面回發後顯示啓用。在我的gridview有篩選行使用數據表插件,我補充說,如果沒有找到匹配記錄我禁用導出按鈕正常位置後 – Ben805

+0

在您的頁面標記,你沒有顯示GridView的位置。請包括所以我們可以看到你的GridView是如何設計的。 – CurseStacker

回答

0

刪除UpdatePanelbtnExport,它是沒有任何意義的,因爲它是那裏唯一的元素,你通過設置一個PostBackTrigger到按鈕取消UpdatePanel功能。或者將GridView放置在UPdatePanel的內部並保留PostBackTrigger。無論採用哪種方式,您都可以在GridView RowCOmmand方法中禁用/啓用編輯命令中的按鈕。

protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e) 
{ 
    if (e.CommandName == "mybutton_edit") 
    { 
     btnExport.Enabled = false; 
    } 
    else if (e.CommandName == "mybutton_cancelEdit") 
    { 
     btnExport.Enabled = true; 
    } 
} 

PS的<Triggers>必須放在內<asp:UpdatePanel>