循环通过DataGrid行和检查复选框控件

时间:2011-04-21 11:17:53

标签: c# asp.net

  

可能重复:
  Looping through DataGrid rows and Checking Checkbox Control

我目前有一个显示学生表数据的GridView,gridview中有两个模板字段:Checkbox和Label(标签模板字段显示StudentID)。我在页面上有一个按钮,当用户点击按钮时我需要遍历GridView中的每一行,然后找到CheckBox然后我需要检查是否选中了复选框。如果选中该复选框,我需要将标签模板字段中的值添加到数据库中的其他表。我该如何实现这一目标?我正在使用C#Code。

1 个答案:

答案 0 :(得分:0)

实际上,您可以使用OnItemCommand获取此信息。将ID绑定到CommandArgument

protected void GVSearchResults_RowCommand(object sender, GridViewCommandEventArgs e)
        {

            foreach (GridViewRow gvr in gvSearchResults.Rows)
            {
                if (gvr.RowType == DataControlRowType.DataRow)
                {
                    if (((Label)gvr.FindControl("lblStudentID")).Text == e.CommandArgument.ToString())
                    {
                        bool isChecked = ((CheckBox)gvr.FindControl("cbStudent")).Checked;
                        int count = 0;
                        if (e.CommandName == "Save")
                        {
                            this.SaveStudentcheck(int.Parse(e.CommandArgument.ToString()));
                        }
                        break;
                    }
                }
            }
            gvSearchResults.DataBind();            
        }