다음을 통해 공유


Control.LoadControlState(Object) 메서드

정의

SaveControlState() 메서드에서 저장한 이전 페이지 요청에서 컨트롤 상태 정보를 복원합니다.

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)

매개 변수

savedState
Object

복원할 컨트롤 상태를 나타내는 Object입니다.

예제

다음 코드 예제는 사용자 지정 ASP.NET 컨트롤에서 메서드를 재정 LoadControlState 의합니다. 이 메서드가 호출되면 컨트롤 상태가 이전에 컨트롤에 대해 저장되었는지 여부를 확인하고, 이 경우 내부 속성을 currentIndex 저장된 값으로 설정합니다.

메서드는 OnInit 사용자 지정 컨트롤이 컨트롤 상태를 사용함을 나타내기 위해 에서 Page 메서드를 호출 RegisterRequiresControlState 하도록 재정의됩니다.

public class Sample : Control {
    private int currentIndex = 0;
   
    protected override void OnInit(EventArgs e) {
        Page.RegisterRequiresControlState(this);
        base.OnInit(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)
          Page.RegisterRequiresControlState(Me)
          currentIndex = 0
          MyBase.OnInit(e)
      End Sub
  
      Protected Overrides Function SaveControlState() As Object
          If currentIndex <> 0 Then
              Return CType(currentIndex, Object)
          Else
              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

설명

사용자 지정 서버 컨트롤이 컨트롤 상태를 복원하는 방법을 지정해야 하는 경우 이 메서드를 재정의합니다. 자세한 내용은 ASP.NET 상태 관리 개요합니다.

적용 대상

추가 정보