高分求FindControl checkbox datalist问题
EditUnChecked.aspx文件:
<%@ Register TagPrefix="portal" TagName="Banner" Src="~/DesktopPortalBanner.ascx" %>
<%@ Page Language="c#" CodeBehind="EditUnChecked.aspx.cs" AutoEventWireup="false" Inherits="ASPNetPortal.EditUnChecked" %>
<HTML>
<body>
<form id="Form1" method="post" runat="server">
<asp:datalist id="myList1" runat="server" Width="100%">
<ItemTemplate>
<TABLE>
<TR>
<asp:CheckBox id="Save" runat="server" AutoPostBack="False"/><B>Save to Favorites</B>
<asp:HyperLink id=NH2 runat="server" Text='<%# DataBinder.Eval(Container.DataItem,"Title") %>' Name="NH2" ToolTip='<%# DataBinder.Eval(Container.DataItem,"Description") %>'>
</asp:HyperLink>
<asp:TextBox id=ItemID Text='<%# DataBinder.Eval(Container.DataItem,"ItemID") %>' Runat="server" TextMode="SingleLine" Visible="True">
</asp:TextBox></TR>
</TABLE>
</ItemTemplate>
</asp:datalist><br>
<asp:button id="updateButton" style="Z-INDEX: 101; LEFT: 24px; POSITION: absolute; TOP: 480px" runat="server" Text="Button"></asp:button>
</form>
</body>
</HTML>
EditUnChecked.aspx.cs文件:
。。。
protected System.Web.UI.WebControls.TextBox ItemID;
protected System.Web.UI.WebControls.Button updateButton;
protected System.Web.UI.WebControls.DataList myList1;
。。。
public void updateButton_Click(object sender,System.EventArgs e){
int i=0;
foreach (DataListItem anItem in this.myList1.Items){
CheckBox isDeleted;
isDeleted =(CheckBox)anItem.FindControl("Save");
if (isDeleted.Checked){
int ItemID=int.Parse(((TextBox)myList1.Items[i].FindControl("ItemID")).Text);
。。。
}
i=i+1;
}
}
弄了一天也没取到checkbox的值(其实是取到了。可是怎么都是false,如果初始值是true的话,那得到的就是true,也就是没法得到它改变了的值)。但是可以取到ID为ItemID的textbox控件的值和HyperLink id=NH2的值。
哪位大侠指点迷津?????