Control.LoadControlState(Object) Control.LoadControlState(Object) Control.LoadControlState(Object) Control.LoadControlState(Object) Method


SaveControlState() 方法所儲存的上一頁要求中,還原控制項狀態資訊。Restores control-state information from a previous page request that was saved by the SaveControlState() method.

protected public:
 virtual void LoadControlState(System::Object ^ savedState);
protected internal virtual void LoadControlState (object savedState);
abstract member LoadControlState : obj -> unit
override this.LoadControlState : obj -> unit
Protected Friend Overridable Sub LoadControlState (savedState As Object)


Object Object Object Object

Object,表示所要還原的控制項狀態。An Object that represents the control state to be restored.


下列程式碼範例會覆LoadControlState寫自訂 ASP.NET 控制項中的方法。The following code example overrides the LoadControlState method in a custom ASP.NET control. 叫用這個方法時,它會判斷先前是否已為控制項儲存控制項狀態,如果是的話,則會將 internal currentIndex屬性設定為儲存的值。When this method is invoked, it determines whether control state was previously saved for the control and, if so, sets the internal property currentIndex to the saved value.

會覆寫Page RegisterRequiresControlState OnInit方法以呼叫上的方法,以表示自訂控制項使用控制項狀態。The OnInit method is overridden to call the RegisterRequiresControlState method on the Page to indicate that the custom control uses control state.

public class Sample : Control {
    private int currentIndex = 0;
    protected override void OnInit(EventArgs e) {

    protected override object SaveControlState() {
        return currentIndex != 0 ? (object)currentIndex : null;

    protected override void LoadControlState(object state) {
        if (state != null) {
            currentIndex = (int)state;
Class Sample
  Inherits Control
  Dim currentIndex As Integer
      Protected Overrides Sub OnInit(ByVal e As EventArgs)
          currentIndex = 0
      End Sub
      Protected Overrides Function SaveControlState() As Object
          If currentIndex <> 0 Then
              Return CType(currentIndex, Object)
              Return Nothing
          End If
      End Function
      Protected Overrides Sub LoadControlState(ByVal state As Object)
          If (state <> Nothing) Then
              currentIndex = CType(state, Integer)
          End If
      End Sub
End Class


當您需要指定自訂伺服器控制項還原其控制項狀態的方式時,請覆寫這個方法。Override this method when you need to specify how a custom server control restores its control state. 如需詳細資訊,請參閱ASP.NET 狀態管理總覽For more information, see ASP.NET State Management Overview.