/// <summary> /// 设置当前页面上的所有可输入和选择的控件为只读属性 /// </summary> /// <param name="page"></param> public static void SetControlReadOnly(Page page) { foreach (Control ctrl in page.Controls) { SetControlReadOnly(ctrl); } } //递归调用。设置控件只读。 public static void SetControlReadOnly(Control ctr) { if (ctr is TextBox) { TextBox txtControl = (TextBox)ctr; txtControl.ReadOnly = true; txtControl.Enabled = false; } else if (ctr is RadioButton) { RadioButton btn = (RadioButton)ctr; btn.Enabled = false; } else if (ctr is RadioButtonList) { RadioButtonList btn = (RadioButtonList)ctr; btn.Enabled = false; } else if (ctr is CheckBox) { CheckBox cb = (CheckBox)ctr; cb.Enabled = false; } else if (ctr is DropDownList) { DropDownList list = (DropDownList)ctr; list.Enabled = false; } else if (ctr is HtmlTextArea) { HtmlTextArea cb = (HtmlTextArea)ctr; cb.Attributes.Add("readonly", ""); cb.Disabled = true; } else if (ctr is HtmlSelect) { HtmlSelect rb = (HtmlSelect)ctr; rb.Disabled = true; } else if (ctr is HtmlInputCheckBox) { HtmlInputCheckBox rb = (HtmlInputCheckBox)ctr; rb.Disabled = true; } else if (ctr is HtmlInputRadioButton) { HtmlInputRadioButton rb = (HtmlInputRadioButton)ctr; rb.Disabled = true; } else if (ctr is HtmlInputText) { HtmlInputControl input = (HtmlInputControl)ctr; input.Attributes.Add("readonly", ""); input.Disabled = true; } else foreach (Control ctr1 in ctr.Controls) { SetControlReadOnly(ctr1); } }
/// <summary> /// 取消只读属性 /// </summary> /// <param name="page">要操作的页面,一般传this</param> /// <param name="ControlID">控件ID</param> public static void RemoveReadOnlyByID(Page page, string ControlID) { Control ctr = page.FindControl(ControlID); if (ctr is TextBox) { TextBox txtControl = (TextBox)ctr; txtControl.ReadOnly = false; txtControl.Enabled = true; } else if (ctr is RadioButton) { RadioButton btn = (RadioButton)ctr; btn.Enabled = true; } else if (ctr is CheckBox) { CheckBox cb = (CheckBox)ctr; cb.Enabled = true; } else if (ctr is DropDownList) { DropDownList list = (DropDownList)ctr; list.Enabled = true; } else if (ctr is HtmlTextArea) { HtmlTextArea cb = (HtmlTextArea)ctr; cb.Attributes.Remove("readonly"); cb.Disabled = false; } else if (ctr is HtmlSelect) { HtmlSelect rb = (HtmlSelect)ctr; rb.Disabled = false; } else if (ctr is HtmlInputCheckBox) { HtmlInputCheckBox rb = (HtmlInputCheckBox)ctr; rb.Disabled = false; } else if (ctr is HtmlInputRadioButton) { HtmlInputRadioButton rb = (HtmlInputRadioButton)ctr; rb.Disabled = false; } else if (ctr is HtmlInputText) { HtmlInputControl input = (HtmlInputControl)ctr; input.Attributes.Remove("readonly"); input.Disabled = false; } }