C# 回发时复选框状态重置

C# 回发时复选框状态重置,c#,asp.net,.net,C#,Asp.net,.net,我想在点击按钮后获得gridview中所有复选框的“真”或“假”。 但即使我选中了复选框,也没有一个复选框返回“true”。 请将原因和解决方案写信给我。提前感谢 protected void Button1_Click(object sender, EventArgs e) { foreach(GridViewRow r in GridView1.Rows) { Boolean b = ((Chec

我想在点击按钮后获得gridview中所有复选框的“真”或“假”。
但即使我选中了复选框,也没有一个复选框返回“true”。
请将原因和解决方案写信给我。提前感谢

protected void Button1_Click(object sender, EventArgs e)
        {
            foreach(GridViewRow r in GridView1.Rows)
            {
                Boolean b = ((CheckBox)GridView1.Rows[r.RowIndex].Cells[0].FindControl("cbox")).Checked;
                Response.Write(b);
            }
        }

问题可能是您正在页面加载时重新绑定数据(在控制事件之前发生)

尝试将绑定方法包装到

If (!IsPostBack)
{
    //Load  Data
}
编辑:


有用的链接很有用:

那么您是如何绑定它的,也许您可以单击按钮再次绑定它,以防它不在IsPostBack子句@pageload中