2017-02-09 11 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

グリッドビュー – CurseStacker

+0

のボタンをクリックする前後にページのスクリーンショットを提供できますか?@CurseStacker、グリッドビュー画像を編集画像をクリックしたときに追加しました。無効にし、ページポストバック後に再び有効にします。私のgridviewには、一致するレコードが見つからなかった場合、追加可能なデータテーブルプラグインを使用するための行がフィルタリングされています。 – Ben805

+0

あなたのページマークアップでは、GridViewがどこに表示されていません。あなたのGridViewがどのように設計されているかがわかります。 – CurseStacker

答えて

0

btnExport周りUpdatePanelを削除し、それはそこに唯一の要素だとあなたがボタンにPostBackTriggerを設定することで、UpdatePanelの機能をキャンセルするので、それはとにかく意味をなさない。または、UPdatePanelの内部にGridViewを配置し、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; 
    } 
} 

<Triggers><asp:UpdatePanel>の内側に配置する必要がありますPS。

関連する問題