Control.IsTrackingViewState 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取一个值,用于指示服务器控件是否会将更改保存到其视图状态中。
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 用于删除这些子控件的任何已保存视图状态设置。 最后, 属性 ChildControlsCreated 设置为 true
。 然后, 控件使用 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
注解
有关使用此属性的示例自定义服务器控件,请参阅 模板化服务器控件示例。