ControlCollection.Clear 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
从当前服务器控件的 ControlCollection 对象中移除所有控件。
public:
virtual void Clear();
public virtual void Clear ();
abstract member Clear : unit -> unit
override this.Clear : unit -> unit
Public Overridable Sub Clear ()
示例
下面的代码示例演示如何重写 Control.CreateChildControls 该方法,并使用 Clear 该方法删除以前在 ControlCollection 对象中的所有子控件。 在这种情况下,必须执行此操作,这样控件 ControlCollection 中的过时对象就不会不恰当地显示。
// Override to create repeated items.
protected override void CreateChildControls() {
object o = ViewState["NumItems"];
if (o != null) {
// Clear any existing child controls.
Controls.Clear();
int numItems = (int)o;
for (int i=0; i < numItems; i++) {
// Create an item.
RepeaterItem item = new RepeaterItem(i, null);
// Initialize the item from the template.
ItemTemplate.InstantiateIn(item);
// Add the item to the ControlCollection.
Controls.Add(item);
}
}
}
' Override to create repeated items.
Protected Overrides Sub CreateChildControls()
Dim O As Object = ViewState("NumItems")
If Not (O Is Nothing)
' Clear any existing child controls.
Controls.Clear()
Dim I As Integer
Dim NumItems As Integer = CInt(O)
For I = 0 To NumItems - 1
' Create an item.
Dim Item As RepeaterItemVB = New RepeaterItemVB(I, Nothing)
' Initialize the item from the template.
ItemTemplate.InstantiateIn(Item)
' Add the item to the ControlCollection.
Controls.Add(Item)
Next
End If
End Sub
注解
在重写和DataBind方法时,使用此方法清空Control.CreateChildControls自定义控件ControlCollection。 在开发复合控件、模板化控件或模板化数据绑定控件时执行此操作。