Control.HasControls 方法
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
确定服务器控件是否包含任何子控件。
public:
virtual bool HasControls();
public virtual bool HasControls ();
abstract member HasControls : unit -> bool
override this.HasControls : unit -> bool
Public Overridable Function HasControls () As Boolean
如果控件包含其他控件,则为 true
;否则为 false
。
下面的示例使用HasControls该方法来确定在使用属性循环访问ControlCollection对象之前Count是否存在任何控件。
if (HasControls()) {
for (int i=0; i < Controls.Count; i++) {
Controls[i].RenderControl(writer);
}
}
If HasControls() Then
Dim i As Integer
For i = 0 To Controls.Count - 1
Controls(i).RenderControl(writer)
Next i
End If
由于此方法只是确定是否存在任何子控件,因此可以通过允许避免不必要的 Count 属性调用来提高性能。 对此属性的调用需要 ControlCollection 实例化对象。 如果没有子级,则此对象创建会浪费服务器资源。
HasControls()仅应重写该方法以更改元数据属性,例如EditorBrowsableAttribute。 有关使用属性的详细信息,请参阅 “属性”。
产品 | 版本 |
---|---|
.NET Framework | 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8 |