写的一个递归处理程序。方便以后重复使用 mark 一下
private void DisEnableControls(Control control)
{
foreach (Control ctrol in control.Controls)
{
if (ctrol is WebControl)
{
if (ctrol is System.Web.UI.WebControls.DropDownList || ctrol is System.Web.UI.WebControls.TextBox || ctrol is System.Web.UI.WebControls.RadioButtonList || ctrol is System.Web.UI.WebControls.RadioButton || ctrol is System.Web.UI.WebControls.CheckBox)
{
((WebControl)ctrol).Enabled = false;
}
}
if (ctrol is MultiView && ((MultiView)ctrol).Views.Count > 0)
{
DisEnableControls(((MultiView)ctrol).Views[((MultiView)ctrol).ActiveViewIndex]);
}
if (ctrol is Panel)
{
DisEnableControls(ctrol);
}
if (ctrol is System.Web.UI.HtmlControls.HtmlTable)
{
DisEnableControls(ctrol);
}
if (ctrol is Literal)
{
if (ctrol.ID == "lt_RateContros")
{
((Literal)ctrol).Text = ((Literal)ctrol).Text.Replace("<select disabled=\"disabled\"", "<select").Replace("<select", "<select disabled=\"disabled\"");
}
}
if (ctrol is System.Web.UI.HtmlControls.HtmlTableRow)
{
DisEnableControls(ctrol);
}
if (ctrol is System.Web.UI.HtmlControls.HtmlTableCell)
{
DisEnableControls(ctrol);
}
if (ctrol is UserControl)
{
DisEnableControls((UserControl)ctrol);
}
}
}
private void ClearAlterMessageForControls(Control control)
{
foreach (Control ctrol in control.Controls)
{
if (ctrol is WebControl)
{
if (ctrol is System.Web.UI.WebControls.DropDownList || ctrol is System.Web.UI.WebControls.TextBox || ctrol is System.Web.UI.WebControls.RadioButtonList || ctrol is System.Web.UI.WebControls.RadioButton || ctrol is System.Web.UI.WebControls.CheckBox || ctrol is System.Web.UI.WebControls.LinkButton || ctrol is System.Web.UI.WebControls.CheckBox)
{
#region No alert controls
if (ctrol is System.Web.UI.WebControls.DropDownList)
{
DropDownList _tempctrol = ctrol as DropDownList;
if (_tempctrol.AutoPostBack)
{
_tempctrol.Attributes.Add("onclick", "isshowmessage=false;");
}
}
if (ctrol is System.Web.UI.WebControls.TextBox)
{
TextBox _tempctrol = ctrol as TextBox;
if (_tempctrol.AutoPostBack)
{
_tempctrol.Attributes.Add("onclick", "isshowmessage=false;");
}
}
if (ctrol is System.Web.UI.WebControls.CheckBox)
{
CheckBox _tempctrol = ctrol as CheckBox;
if (_tempctrol.AutoPostBack)
{
_tempctrol.Attributes.Add("onclick", "isshowmessage=false;");
}
}
if (ctrol is System.Web.UI.WebControls.LinkButton)
{
LinkButton _tempctrol = ctrol as LinkButton;
_tempctrol.Attributes.Add("onclick", "isshowmessage=false;");
}
if (ctrol is System.Web.UI.WebControls.RadioButtonList)
{
RadioButtonList _tempctrol = ctrol as RadioButtonList;
if (_tempctrol.AutoPostBack)
{
_tempctrol.Attributes.Add("onclick", "isshowmessage=false;");
}
}
if (ctrol is System.Web.UI.WebControls.RadioButton)
{
RadioButton _tempctrol = ctrol as RadioButton;
if (_tempctrol.AutoPostBack)
{
_tempctrol.Attributes.Add("onclick", "isshowmessage=false;");
}
}
if (ctrol is System.Web.UI.HtmlControls.HtmlAnchor)
{
HtmlAnchor _tempctrol = ctrol as HtmlAnchor;
_tempctrol.Attributes.Add("onclick", "isshowmessage=false;");
}
#endregion
}
}
if (ctrol is MultiView && ((MultiView)ctrol).Views.Count > 0)
{
ClearAlterMessageForControls(((MultiView)ctrol).Views[((MultiView)ctrol).ActiveViewIndex]);
}
if (ctrol is Panel)
{
ClearAlterMessageForControls(ctrol);
}
if (ctrol is UserControl)
{
ClearAlterMessageForControls((UserControl)ctrol);
}
}
}
浙公网安备 33010602011771号