侧面更新面板中的ASP.NET gridview控件存在问题

时间:2010-05-14 18:40:34

标签: asp.net-ajax updatepanel

问候,

我有使用SelectedIndexChanged事件的gridview。

当我点击gridview中的记录时,它应该调用SelectedIndexChanged事件并执行一些操作。

SelectedIndexChanged事件工作正常,但是当我将gridview放在ajax updatepanle中时,即使我为SelectedIndexChanged事件添加了AsyncPostBackTrigger触发器,SelectedIndexChanged事件也不会响应。

请查看我的代码并告诉我应该做些什么!!

谢谢

<%@ Page Title="" Language="C#" MasterPageFile="~/Master.Master" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="IMAM_APPLICATION.WebForm1" %>

<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="cc1" %>

<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">

     <div id="mydiv">

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


  <br />  <br />
                <br />
    <asp:GridView ID="GridView1" runat="server" 

                        style="position:absolute; top: 280px; left: 30px; height: 240px; width: 915px;" 
                        PageSize="5" 
                    onselectedindexchanged="GridView1_SelectedIndexChanged" 
                        AutoGenerateColumns="False" DataKeyNames="idcontact_info">
                    <Columns>
                        <asp:CommandField ShowSelectButton="True" />
                        <asp:BoundField AccessibleHeaderText="Midle Name" DataField="Midle_Name" />
                        <asp:BoundField DataField="Last_Name" HeaderText="Last Name" />
                        <asp:BoundField DataField="Phone_home" HeaderText="Phone Home" />
                        <asp:BoundField DataField="cell_home" HeaderText="Mobile Home" />
                        <asp:BoundField DataField="phone_work" HeaderText="Phone Work" />
                        <asp:BoundField DataField="cell_Work" HeaderText="Mobile Work" />
                        <asp:BoundField DataField="Email_Home" HeaderText="Personal Home" />
                        <asp:BoundField DataField="Email_work" HeaderText="Work Email" />
                    </Columns>
                </asp:GridView>

                <br />  

         <br />
                <br /></ContentTemplate>
             <Triggers>
                 <asp:AsyncPostBackTrigger ControlID="GridView1" 
                     EventName="SelectedIndexChanged" />
             </Triggers>
         </asp:UpdatePanel>


               <asp:RadioButton ID="rdoSearchFlat" runat="server" 
                    style="position:absolute; top: 565px; left: 70px;" Text="Flat Search" 
                    GroupName="Search"/>

                    <asp:TextBox ID="txtSearch" runat="server" 
                    style="position:absolute; top: 560px; left: 170px;" ></asp:TextBox>

                    <asp:Button ID="btnSearch" runat="server" Text="Search" 
                    style="position:absolute; top: 555px; left: 375px;" 
                    CausesValidation="False" onclick="btnSearch_Click"/>

                    <asp:Label ID="Label7" runat="server" Style="position: absolute; top: 630px; left: 85px;"
                    Text="First Name"></asp:Label>

                 <asp:TextBox ID="txtFirstName" runat="server" Style="top: 630px; left: 185px; position: absolute;
                    height: 22px; width: 128px">
                    </asp:TextBox>   



</div>    
</asp:Content>

2 个答案:

答案 0 :(得分:0)

我错过了一些我应该将所有控件放在更新面板中的控件。

答案 1 :(得分:0)

您需要在SyncPostBack中使用UpdatePanel,并在Control中将ControlID的ID分配给UpdatePanel