protected void subCheckAll(object sender, EventArgs e) { checkAllHTML(this, ((CheckBox)sender).Checked); } // This is the Event of the CheckBox
private void checkAllHTML(Control parent, bool blnChecked) { string sParentTest = parent.Controls.GetType().ToString(); string sParentTest2 = parent.GetType().ToString(); //string sParentTest3 = Parent.Controls.GetType().ToString(); foreach (Control child in parent.Controls) { if (child is CheckBox) { CheckBox chk = (CheckBox)child; chk.Checked = blnChecked; //((CheckBox)child).Checked = blnChecked; } if ((child.Controls.Count > 0)) { checkAllHTML(child, blnChecked); } } } // Error - Control child is always LiteralControl // I tried casting it as a checkbox but it don't work as well...
private void CreateCheck() { //Put user code to initialize the page here CheckBox chkBox = new CheckBox(); int i = 0; DataSet ds = new DataSet(); int lintHeadID = 0; string lstrGroup = string.Empty; bool lblFisrt = false; ds = CreateDataSource(); lstrGroup = ""; lblFisrt = false; lintHeadID = 0; for (i = 0; i <= ds.Tables[0].Rows.Count - 1; i++) { if (lstrGroup != ds.Tables[0].Rows[i][3].ToString()) // Rows[i][3] <-- The [3] The 3rd Column in the Table { lintHeadID = lintHeadID + 1; lstrGroup = (string)ds.Tables[0].Rows[i][3]; string sHeaderID = lintHeadID + "00"; chkBox.ID = String.Format(sHeaderID) + "chkHeader" + i; //chkBox.ID = Strings.Format(lintHeadID, "00") + "chkHeader" + i; chkBox.Text = lstrGroup; chkBox.Font.Bold = true; chkBox.Font.Name = "Verdana"; chkBox.Font.Size = FontUnit.XSmall; chkBox.Width = Unit.Percentage(100); chkBox.BackColor = Color.SkyBlue; chkBox.Font.Underline = true; TableRow tr1 = new TableRow(); TableCell td3 = new TableCell(); TableCell td1 = new TableCell(); td3.Width = Unit.Percentage(5); tr1.Cells.Add(td3); td1.Controls.Add(chkBox); tr1.Cells.Add(td1); lblFisrt = !lblFisrt; if (lblFisrt) { tblPermission.Rows.Add(tr1); } else { tblPermission2.Rows.Add(tr1); } chkBox.AutoPostBack = true; chkBox.CheckedChanged += Master_CheckedChanged; } chkBox = new CheckBox(); string sHeadID = lintHeadID + "00"; chkBox.ID = String.Format(sHeadID) + "chkDetail" + i; chkBox.Text = (string)ds.Tables[0].Rows[i][1]; chkBox.ToolTip = (string)ds.Tables[0].Rows[i][0]; //store permission id in tooptip TableRow tr = new TableRow(); TableCell td = new TableCell(); TableCell td2 = new TableCell(); td2.Width = Unit.Percentage(5); tr.Cells.Add(td2); td.Controls.Add(chkBox); tr.Cells.Add(td); chkBox.CheckedChanged += Detail_CheckedChanged; if (lblFisrt) { tblPermission.Rows.Add(tr); } else { tblPermission2.Rows.Add(tr); } } } // I create the checkboxes based on the results returned from my Dataset