How do I disable all controls in ASP.NET page?
后台代码:
protected void Page_Load(object sender, EventArgs e)
{
DisableChilds(this.Page);
if (!IsPostBack)
{
DDLBindCaseBelong();
DDLBindCaseSource();
BandMSCase();
}
}
private void DisableChilds(Control ctrl)
{
foreach (Control c in ctrl.Controls)
{
DisableChilds(c);
if (c is DropDownList)
{
((DropDownList)(c)).Enabled = false;
}
if (c is TextBox)
{
((TextBox)(c)).Enabled = false;
}
if (c is CheckBox)
{
((CheckBox)(c)).Enabled = false;
}
}
}
//private void DisableControls()
//{
// for (int i = 0; i < page.Controls.Count; i++)
// {
// foreach (Control obj in page.Controls[i].Controls)
// {
// if (obj is DropDownList)
// {
// DropDownList dlt = (DropDownList)obj;
// dlt.Enabled = false;
// }
// else if (obj is TextBox)
// {
// TextBox txt = (TextBox)obj;
// txt.Enabled = false;
// }
// else if (obj is RadioButton)
// {
// RadioButton rbtn = (RadioButton)obj;
// rbtn.Enabled = false;
// }
// else if (obj is RadioButtonList)
// {
// RadioButtonList rbtn = (RadioButtonList)obj;
// rbtn.Enabled = false;
// }
// else if (obj is CheckBox)
// {
// CheckBox chk = (CheckBox)obj;
// chk.Enabled = false;
// }
// else if (obj is CheckBoxList)
// {
// CheckBoxList chk = (CheckBoxList)obj;
// chk.Enabled = false;
// }
// else if (obj is ListBox)
// {
// ListBox lst = (ListBox)obj;
// lst.Enabled = false;
// }
// }
// }
//}