Control.ClearChildState メソッド
アセンブリ: System.Web (system.web.dll 内)


ClearChildState メソッドは、子コントロールのすべてのビューステート情報およびコントロールの状態情報を削除します。これは、ClearChildViewState メソッドおよび ClearChildControlState メソッドの両方を呼び出すことと同じです。
Control オブジェクトの子コントロールを再作成するときは、既存の子の状態が新しいコントロールに誤って適用されないように、ClearChildState メソッドを使用して子の状態を削除してください。

テンプレート宣言されたデータ バインド コントロールの OnDataBinding メソッドをオーバーライドする方法を次のコード例に示します。コントロールがバインドするデータ ソースが設定された場合は、Clear メソッドを使用してコントロールの ControlCollection コレクションが空になります。また、ClearChildState メソッドを使用して、子コントロールに対して保存された状態情報が削除されます。
' Override to create the repeated items from the DataSource. Protected Overrides Sub OnDataBinding(E As EventArgs) MyBase.OnDataBinding(e) If Not DataSource Is Nothing ' Clear any existing child controls. Controls.Clear() ' Clear any previous view state for the existing child controls. ClearChildState() ' Iterate over the DataSource, creating a new item for each data item. Dim DataEnum As IEnumerator = DataSource.GetEnumerator() Dim I As Integer = 0 Do While (DataEnum.MoveNext()) ' Create an item. Dim Item As RepeaterItemVB = New RepeaterItemVB(I, DataEnum.Current) ' Initialize the item from the template. ItemTemplate.InstantiateIn(Item) ' Add the item to the ControlCollection. Controls.Add(Item) I = I + 1 Loop ' Prevent child controls from being created again. ChildControlsCreated = true ' Store the number of items created in view state for postback scenarios. ViewState("NumItems") = I End If End Sub
// Override to create the repeated items from the DataSource. protected override void OnDataBinding(EventArgs e) { base.OnDataBinding(e); if (DataSource != null) { // Clear any existing child controls. Controls.Clear(); // Clear any previous state for the existing child controls. ClearChildState(); // Iterate over the DataSource, creating a new item for each data item. IEnumerator dataEnum = DataSource.GetEnumerator(); int i = 0; while(dataEnum.MoveNext()) { // Create an item. RepeaterItem item = new RepeaterItem(i, dataEnum.Current); // Initialize the item from the template. ItemTemplate.InstantiateIn(item); // Add the item to the ControlCollection. Controls.Add(item); i++; } // Prevent child controls from being created again. ChildControlsCreated = true; // Store the number of items created in view state for postback scenarios. ViewState["NumItems"] = i; } }

Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Weblioに収録されているすべての辞書からControl.ClearChildState メソッドを検索する場合は、下記のリンクをクリックしてください。

- Control.ClearChildState メソッドのページへのリンク