2016-12-14 24 views
0

我想在Postback(下載按鈕)後清除面板和datagrdiview。 當我第二次點擊搜索數據(查詢按鈕)。 datagridview現在顯示2個網格和2個面板(不工作綁定,不刷新網格)。回發後如何清除面板和datagridview?

第一個網格是舊數據不清楚後點擊按鈕回傳。 第二格是新數據。

設計ASPX C#

<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder2" runat="server"> 
<div style="padding: 5px 10px 5px 10px; text-align: center;"> 
    <asp:UpdatePanel ID="udpMain" runat="server" UpdateMode="Conditional" >   
    <ContentTemplate> 
    <asp:Panel ID="pnlQuery" Visible="true" runat="server"> 
    <fieldset style="width: 50%;"> 
     <legend>Query Conditions: </legend> 
     <table> 
     <tr> 
     <td> 
     //Condition Search   
     </td>         
     </tr>           
     <tr> 
     <td colspan="2" align="center"> 
     <table>           
      <tr> 
      <td>            
      <asp:Button ID="btnQuery" CssClass="btn" runat="server" Text=" Query " Visible="false" OnClick="btnQuery_Click" />  
      </td> 
      <td> 
      <asp:Button ID="btnClear" CssClass="btn" runat="server" Text=" Clear " Visible="false" OnClick="btnClear_Click" /> 
      </td>            
      </tr> 
     </table> 
     </td> 
     </tr>        
     </table> 
    </fieldset> 
    </asp:Panel> 

    <tr> 
    <td align="center">       
     <asp:Panel ID="pnDetails" runat="server" GroupingText="TAP File" Width="30%"> 
     <asp:GridView ID="gvDetail" runat="server" Width="30%" SkinID="gvSkSearch" PageSize="50" OnPageIndexChanging="gvDetail_PageIndexChanging" AutoGenerateColumns="False" 
OnRowDataBound="gvDetail_RowDataBound" > 
     <Columns> 
     //Condition Columns       
     </Columns> 
     </asp:GridView> 
    </asp:Panel>        
    </td> 
    </tr> 
    <tr> 
    <td align="center"> 
     <asp:Button ID="btnDownload" runat="server" CssClass="btn" OnClick="btnDownload_Click" Text=" Download " Visible="false" /> 
     <asp:Button ID="btnConfirmTAP" runat="server" CssClass="btn" OnClick="btnConfirmTAP_Click" Text=" Confirm send TAP " Visible="false" 
     Width="120px" /> 
     </td> 
    </tr> 
    </br> 
    </ContentTemplate> 
    <Triggers> 
    <asp:PostBackTrigger ControlID="btnDownload" /> 
    </Triggers>   
    </asp:UpdatePanel> 
</div> 
</asp:Content> 

C#

public void btnQuery_Click(object sender, EventArgs e) 
{ 
    //.... dt = list data 

    if (dt != null && dt.Rows.Count > 0) 
    { 
     gvDetail.DataSource = dt; 
     gvDetail.DataBind(); 
     pnDetails.Visible = true; 
     btnDownload.Visible = true; 
     btnConfirmTAP.Visible = true; 
    } 
    else 
    { 
     pnDetails.Visible = false; 
     btnDownload.Visible = false; 
     btnConfirmTAP.Visible = false; 
    } 
} 

如何清晰面板和datagridview的回發後。 感謝提前:)

+0

一個小組,如果您的{}條件否則{您的條件}(的IsPostBack!) - 不工作? – Valkyrie

回答

0

您可以通過綁定null來清除GridView。

GridView1.DataSource = null; 
GridView1.DataBind(); 

而且你可以清除這樣

Panel1.Controls.Clear();