首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

怎么将一个Panel下的Webcontrol 的Enabled全部置为 false

2013-07-09 
如何将一个Panel下的Webcontrol 的Enabled全部置为 false ?Dim Ctl As System.Web.UI.WebControls.WebCont

如何将一个Panel下的Webcontrol 的Enabled全部置为 false ?
Dim Ctl As System.Web.UI.WebControls.WebControl
For Each Ctl In PnlContent.Controls
      Ctl.Enabled = False
Next
-----------------------------------
由于System.Web.UI.Control的子类WebControl都有Enabled属性,但其它子类没有这个Enabled属性,运行时会出现这样的错误提示:
无法将类型为“System.Web.UI.LiteralControl”的对象强制转换为类型“System.Web.UI.WebControls.WebControl”。

请问,上面的代码如何修改,能枚举Panel下的所有WebControl,并设置Enabled属性?

[解决办法]
Dim Ctl As System.Web.UI.WebControls.WebControl
For Each Ctl In PnlContent.Controls
      Ctl.Enabled = False
Next

这个多加个判断,判断Ctl是不是属于WebControl这个控件,是就Ctl.Enabled = False
否则跳过。
[解决办法]
不必每个控件设置!!!
直接对Panel的属性设为false,它内部所有控件也自然为false.

热点排行