[英]CheckBox “Checked” value in GridView is always false
我在gridview
使用了一个checkbox
列,该列从SQL
数据库中填充。 gridview
下面的按钮应该检索已经选中了checkboxe's
行的数据。 当我循环遍历所有行checkboxe's
,即使我在单击按钮之前检查了所有行,也没有checked==true
。 这是ASP.NET
代码:
<asp:TemplateField>
<ItemTemplate>
<asp:CheckBox ID="chkRow" runat="server" />
</ItemTemplate>
</asp:TemplateField>
这是按钮的动作循环遍历所有行的复选框:
protected void GetSelectedRecords(object sender, EventArgs e)
{
foreach (GridViewRow row in GridView1.Rows)
{
if (row.RowType == DataControlRowType.DataRow)
{
CheckBox chkRow = (row.Cells[0].FindControl("chkRow") as CheckBox);
if (chkRow != null && chkRow.Checked) //chkRow.Checked is always "false"
{
string name = row.Cells[2].Text;
}
}
}
}
非常感谢提前。 我非常感谢任何帮助。
如果要在Page_Load
中绑定网格,请确保在if(!IsPostBack){}
之外没有绑定网格。 否则你将松开每个postback
的checkboxe's
,因此失去了checkboxe's
状态。
protected void Page_Load(object sender, EventArgs e)
{
if(!IsPostBack)
{
//Bind Your Grid Here
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.