VS2010asp.net复选框从不调用方法
您好,我有一个网页,其中包含从数据库填充的gridview。其中一个字段是复选框。我试图做的是点击复选框时更新数据库中的值。不过,我在gvSiteInfo_CheckBoxUpdate()
方法中有一个断点,它永远不会到达。
你能指出我正确的方向来让这个工作正常吗?我在网上找到的几个例子似乎与我的一样。
下面是我的标记的缩写版本。
<asp:GridView ID="gvSiteInfo" runat="server"
AutoGenerateColumns="False" OnSorting="gvSiteInfo_Sorting"
AllowSorting="True">
<AlternatingRowStyle BackColor="#DCDCDC" />
<Columns>
<asp:BoundField DataField="prodHostHeader" HeaderText="Production Host Header"
SortExpression="prodHostHeader" />
<asp:BoundField DataField="prodDirectory" HeaderText="Production Directory"
SortExpression="prodDirectory" />
<asp:BoundField HeaderText="Active Issues" DataField="issueCount"
SortExpression="issueCount" />
<asp:TemplateField HeaderText="Testing Complete" SortExpression="true">
<ItemTemplate>
<asp:CheckBox ID="cbTestComplete" runat="server" CausesValidation="true" AutoPostBack="true" OnCheckedChanged="gvSiteInfo_CheckBoxUpdate"
Checked='<%# DataBinder.Eval(Container, "DataItem.testComplete").ToString().Equals("true") %>' />
</ItemTemplate>
<EditItemTemplate>
<asp:CheckBox ID="cbTestComplete" runat="server" CausesValidation="true" AutoPostBack="true" OnCheckedChanged="gvSiteInfo_CheckBoxUpdate"
Checked='<%# DataBinder.Eval(Container, "DataItem.testComplete").ToString().Equals("true") %>' />
</EditItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
这里是一个应该被称为
public void gvSiteInfo_CheckBoxUpdate(object sender, EventArgs e)
{
SiteDB dbAccess = new SiteDB();
dbAccess.updateSiteInfo();
}
---------------编辑代码------------ ----------------- 这里是我的Page_Load代码
protected void Page_Load(object sender, EventArgs e){
SiteDB dataAccess = new SiteDB();
dataAccess.SelectedConnectionString = "WISQL01";
DataTable dt = dataAccess.getSiteInfo();
gvSiteInfo.DataSource = dt;
gvSiteInfo.DataBind();
}
------------- UPDATE ------ ----------------------
added CausesValidation="true"
to <asp:checkbox>
对于我的gridview,EnableViewState被设置为true,如果你看上面我加了我的Page_Load代码,并且我相信每次页面重新加载时我都会重新绑定。 – Mike 2012-08-07 19:14:57
完美迈克我认为所以你必须调整你的生命周期 – 2012-08-07 19:16:07
谢谢,但我不知道你的意思是通过调整我的生命周期。是否有我需要更改的gridview或复选框的属性? – Mike 2012-08-07 19:26:59