如何在asp.net gridview中获取值动态创建的复选框值

问题描述 投票:0回答:2

我在asp.net gridview中动态添加复选框控件,如下所示:

CheckBox cb1 = new CheckBox();
cb1.Text = row.Cells[3].Text;
row.Cells[3].Controls.Add(cb1);    

我想在按钮点击事件中访问是否选中该复选框...

点击按钮我试过这个:

foreach (GridViewRow item in grdreport.Rows)
{
    if (item.RowType == DataControlRowType.DataRow)
    {
        CheckBox checkbox1 = (CheckBox)item.FindControl("cb1");
        // cb1.Checked = true;
        if (checkbox1.Checked)
        {
        }
    }
}

但它给了我一个错误:

未设置为对象实例的对象引用cb1值为null

c# asp.net gridview checkbox
2个回答
0
投票
foreach (GridViewRow row in grdreport.Rows)
{

    CheckBox checkbox1= (row.Cells[3].FindControl("cb1") as CheckBox);
    if (checkbox1.Checked)
                        {

                        }
}

需要通过特定的行和单元格访问该复选框


0
投票

专注于这一行:

 CheckBox checkbox1 = (CheckBox)item.FindControl("cb1");

首先检查item.FindControl("cb1")是否给你任何价值。更多信息 - Object Reference Exception

© www.soinside.com 2019 - 2024. All rights reserved.