Control.IsTrackingViewState プロパティ

定義

サーバー コントロールがビューステートの変更を保存しているかどうかを示す値を取得します。

protected:
 property bool IsTrackingViewState { bool get(); };
protected bool IsTrackingViewState { get; }
member this.IsTrackingViewState : bool
Protected ReadOnly Property IsTrackingViewState As Boolean

プロパティ値

コントロールがその状態を保存するようにマークされている場合は true。それ以外の場合は false

次の例では、 DataBind カスタム ASP.NET サーバー コントロールの メソッドをオーバーライドします。 最初に基本 OnDataBinding メソッドを呼び出し、 オブジェクトを ControlCollection 使用します。 ControlCollection.Clear メソッドを使用してすべての子コントロールを削除し、 ClearChildViewState それらの子コントロールの保存されたビューステート設定を削除する メソッドを指定します。 最後に、 プロパティは ChildControlsCreatedtrue設定されます。 次に、 プロパティを IsTrackingViewState 使用して、ビューステート変更の追跡がコントロールに対して有効になっているかどうかを判断します。 有効になっていない場合は、 メソッドが TrackViewState 呼び出されます。

public override void DataBind() 
{
   base.OnDataBinding(EventArgs.Empty);
   // Reset the control's state.
   Controls.Clear();
   // Check for HasChildViewState to avoid unnecessary calls to ClearChildViewState.
   if (HasChildViewState)
      ClearChildViewState();
   ChildControlsCreated = true;
   if (!IsTrackingViewState)
      TrackViewState();
}
Public Overrides Sub DataBind()
   MyBase.OnDataBinding(EventArgs.Empty)
   ' Reset the control's state.
   Controls.Clear()
   ' Check for HasChildViewState to avoid unnecessary calls to ClearChildViewState.
   If HasChildViewState Then
      ClearChildViewState()
   End If
   ChildControlsCreated = True
   If Not IsTrackingViewState Then
      TrackViewState()
   End If
End Sub

注釈

このプロパティを使用するサンプル のカスタム サーバー コントロールについては、「テンプレート サーバー コントロールの例」を参照してください。

適用対象

こちらもご覧ください