I bind datatable values to gridview. I have added three templatefield column in aspx page for permenantly and I add two dynamic checkbox column by creating column using itemplate interface.everythings ok upto databind.but i want to bind checkbox value from datatable value. if datatable value is true , then checkbox value is checked. For that i tried following code.
DataTable bindclassattendance = inter.getstudentattendresult(comp); Createcolumn(); if (bindclassattendance.Rows.Count>0 ) { Classattendancegrid.DataSource = bindclassattendance; Classattendancegrid.DataBind(); for (int i = 0; i < bindclassattendance.Rows.Count; i++) { bool check1 = Convert.ToBoolean(bindclassattendance.Rows[i]["AM"].ToString()); if (check1) { CheckBox chk = Classattendancegrid.Rows[i].FindControl("AM") as CheckBox; chk.Checked = true; } else { CheckBox chk = Classattendancegrid.Rows[i].FindControl("AM") as CheckBox; chk.Checked = false; } bool check2 = Convert.ToBoolean(bindclassattendance.Rows[i]["PM"].ToString()); if (check2) { CheckBox chk = Classattendancegrid.Rows[i].FindControl("PM") as CheckBox; chk.Checked = true; } else { CheckBox chk = Classattendancegrid.Rows[i].FindControl("PM") as CheckBox; chk.Checked = false; } }
and dynamic column Createcolumn() is:
private void Createcolumn() { TemplateField amtemp = new TemplateField(); amtemp.ShowHeader = true; amtemp.HeaderText = "AM"; amtemp.ItemTemplate = new gridviewtemplate(DataControlRowType.DataRow, "AM", "AM", "CheckBox"); Classattendancegrid.Columns.Add(amtemp); TemplateField pmtemp = new TemplateField(); pmtemp.ShowHeader = true; pmtemp.HeaderText = "PM"; pmtemp.ItemTemplate = new gridviewtemplate(DataControlRowType.DataRow, "PM", "PM", "CheckBox"); Classattendancegrid.Columns.Add(pmtemp); }
and the above error is occured. how can solve it and i never used any name as 'cb1'.