2016-12-14 19 views
0

Я хочу очистить панель и datagrdiview после обратной передачи (кнопка загрузки). , когда я нажимаю поисковые данные (кнопка запроса) второй раз. datagridview показывает 2 сетки и 2 панели сейчас (не работает привязка, а не обновляет сетку).Насколько прозрачной панелью и datagridview после обратной передачи?

первая сетка - старые данные непонятные после щелчка кнопка Postback. вторая сетка - новые данные.

Дизайн 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 После Postback.Thanked advance :)

+0

если {ваши условия} еще {ваши условия} (IsPostBack!) - не работает? – Valkyrie

ответ

0

Вы можете очистить GridView, привязав к нему null.

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

И вы можете очистить панель как этот

Panel1.Controls.Clear();