想要仅更新gridView,但整个页面正在刷新

时间:2012-10-01 12:29:27

标签: asp.net .net ajax

请帮帮我....我是ASP.net编程新手.. 我有一个主页面,在那个页面上我有一个按钮 Button1 ,现在点击那个按钮,面板应该弹出。

<ajaxToolkit:ModalPopupExtender ID="modelPopupExtender1"
     CancelControlID="Btcancel"
    PopupControlID="Panel1" TargetControlID="Button1"  
    Drag="true" BackgroundCssClass="ModelPopupBG" 
    runat="server" DropShadow="True" 

    >

现在在 Panel1 我有2个图像按钮。 1)搜索输入的数据(我使用文本框进行输入)并将数据填入 gridview1 和2)以取消弹出窗口。

<asp:Panel ID="Panel1" runat="server" >  
<div class="HelloWorldPopup">    
<div class="PopupBody">
<div class="PopupHeader" id="PopupHeader"><b ><p style="margin-top: 10px">  Selection Panel</p></b></div><div id="UpperBody">  
    <table border="1" runat="server">
    <tr>
        <th >
        <asp:TextBox ID="entry" runat="server"></asp:TextBox></th><th>
        <asp:DropDownList ID="DropDownList1" runat="server" CssClass="dropdowns">
        <asp:ListItem Text="Name"  >
        </asp:ListItem><asp:ListItem Text="Address" >
        </asp:ListItem><asp:ListItem  Text="Telephone">
        </asp:ListItem></asp:DropDownList></th><th>
         <asp:ImageButton ID="Btok" runat="server" onclick="Btok_Click"  ImageUrl="~/images/isearch.png"/>
       </th>
        <th  >
       <asp:ImageButton ID="Btcancel" runat="server" ImageUrl="~/images/cancel.gif" />         
       </th>           
        </tr>                   
    </table>
    </div>   
    <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" 
        style="margin-top: 11px" BackColor="White" BorderColor="White" 
        BorderStyle="Ridge" BorderWidth="2px" CellPadding="3" CellSpacing="1" 
        GridLines="None" Width="100%"      onselectedindexchanged="GridView1_SelectedIndexChanged" >
        <Columns>
            <asp:BoundField DataField="id" HeaderText="ID" Visible="False" />
            <asp:BoundField DataField="name" HeaderText="Name" />
            <asp:BoundField DataField="address" HeaderText="Address" />
            <asp:BoundField DataField="telephone" HeaderText="Telephone" />
            <asp:CommandField HeaderText="Select" ShowSelectButton="True" />
        </Columns>
        <FooterStyle BackColor="#C6C3C6" ForeColor="Black" />
        <HeaderStyle BackColor="#4A3C8C" Font-Bold="True" ForeColor="#E7E7FF" />
        <PagerStyle BackColor="#C6C3C6" ForeColor="Black" HorizontalAlign="Right" />
        <RowStyle BackColor="#DEDFDE" ForeColor="Black" />
        <SelectedRowStyle BackColor="#9471DE" Font-Bold="True" ForeColor="White" />
        <SortedAscendingCellStyle BackColor="#F1F1F1" />
        <SortedAscendingHeaderStyle BackColor="#594B9C" />
        <SortedDescendingCellStyle BackColor="#CAC9C9" />
        <SortedDescendingHeaderStyle BackColor="#33276A" />
    </asp:GridView>


</div>

一切都很好,但我面临的唯一问题是整个页面正在刷新而不仅仅是 gridview1 ,而我只想在点击 BtOk <时刷新gridview1数据/ b>

我想使用updatePanel for gridView可以为我排序..但不知道如何... 我该怎么办?

1 个答案:

答案 0 :(得分:1)

我认为你有答案 - UpdatePanel(这是一种方法)

<asp:UpdatePanel runat="server" ID="GridUpdatePanel">
<ContentTemplate>

   <asp:GridViewID="GridView1" runat="server">
    </asp:GridView>

</ContentTemplate>
</asp:UpdatePanel>

只需创建一个UpdatePanel标记,并将GridView放在ContentTemplate

之间