今天用了一下UpdatePanle,遇到一个问题,先记录下来。GridView放在UpdatePanle里面模板列取不到值! <asp:ScriptManager ID="ScriptManager1" runat="server"> </asp:ScriptManager> <table align=center width=800> <tr><td> <asp:DropDownList ID="DropDownList1" runat="server" AutoPostBack="True" Width="154px" OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged"> <asp:ListItem Value="0"></asp:ListItem> <asp:ListItem Value="1">ID大于15</asp:ListItem> <asp:ListItem Value="2">id小于15</asp:ListItem> </asp:DropDownList></td> <td>id值为<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox></td> </tr> </table> <asp:UpdatePanel ID="UpdatePanel1" runat="server"> <ContentTemplate> <table align=center width=800> <tr><td> <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="ID" DataSourceID="SqlDataSource1" Width="800" CssClass="GridViewCss" OnRowCommand="GridView1_RowCommand"> <Columns> <asp:BoundField DataField="UserCode" HeaderText="UserCode" SortExpression="UserCode" /> <asp:BoundField DataField="UserName" HeaderText="UserName" SortExpression="UserName" /> <asp:BoundField DataField="ID" HeaderText="ID" InsertVisible="False" ReadOnly="True" SortExpression="ID" /> <asp:BoundField DataField="Birthday" HeaderText="Birthday" SortExpression="Birthday" /> <asp:BoundField DataField="Sex" HeaderText="Sex" SortExpression="Sex" /> <asp:BoundField DataField="Email" HeaderText="Email" SortExpression="Email" /> <asp:BoundField DataField="Address" HeaderText="Address" SortExpression="Address" /> <asp:TemplateField HeaderText="ID" > <ItemTemplate > <asp:Label ID="lblid" runat=server Text='<%# Eval("ID") %>'></asp:Label></ItemTemplate> </asp:TemplateField> <asp:TemplateField HeaderText="操作"> <itemtemplate><asp:LinkButton id="lbtndll" runat="server" CommandName="lbtndll" CommandArgument ="<%# GridView1.Rows.Count %>">取值</asp:LinkButton> </itemtemplate> </asp:TemplateField> </Columns> <HeaderStyle CssClass="GridViewHeader" /> </asp:GridView> <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:IwoakOAConnectionString %>" SelectCommand="SELECT [UserCode], [UserName], [ID], [Birthday], [Sex], [Email], [Address] FROM [Iw_User]"> </asp:SqlDataSource> </td></tr> </table> </ContentTemplate> <Triggers> <asp:AsyncPostBackTrigger ControlID="DropDownList1" EventName="SelectedIndexChanged" /> </Triggers> </asp:UpdatePanel> 后台代码: protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e) } 将GridView移出UpdatePanle外是完全没有问题的。 原来取不到值是因为我把TextBox放在了Updatepanle外,谢谢老赵提醒! 相关文章: