Freigeben über


UserControl.LoadViewState(Object) Methode

Definition

Stellt die Ansichtsstatusinformationen aus einer vorherigen Benutzersteuerelementanforderung wieder her, die von der SaveViewState() Methode gespeichert wurde.

protected:
 override void LoadViewState(System::Object ^ savedState);
protected override void LoadViewState(object savedState);
override this.LoadViewState : obj -> unit
Protected Overrides Sub LoadViewState (savedState As Object)

Parameter

savedState
Object

Ein Object Wert, der den zu wiederherstellenden Benutzersteuerelementstatus darstellt.

Beispiele

Das folgende Beispiel veranschaulicht ein Benutzersteuerelement, das den Ansichtszustand mithilfe der und SaveViewState der LoadViewState Methoden verwaltet.

public string UserText
{
    get
    {
        return (string)ViewState["usertext"];
    }
    set
    {
        ViewState["usertext"] = value;
    }
}
public string PasswordText
{
    get
    {
        return (string)ViewState["passwordtext"];
    }
    set
    {
        ViewState["passwordtext"] = value;
    }
}

[System.Security.Permissions.PermissionSet(System.Security.Permissions.SecurityAction.Demand, Name="FullTrust")] 
protected override void LoadViewState(object savedState) 
{
    object[] totalState = null;	   
    if (savedState != null)
    {
        totalState = (object[])savedState;
        if (totalState.Length != 3)
        {
            // Throw an appropriate exception.
        }
        // Load base state.
        base.LoadViewState(totalState[0]);
        // Load extra information specific to this control.
        if (totalState != null && totalState[1] != null && totalState[2] != null)
        {
            UserText = (string)totalState[1];
            PasswordText = (string)totalState[2];
        }
    }
}

[System.Security.Permissions.PermissionSet(System.Security.Permissions.SecurityAction.Demand, Name="FullTrust")] 
protected override object SaveViewState()
{
    object baseState = base.SaveViewState();
    object[] totalState = new object[3];
    totalState[0] = baseState;
    totalState[1] = user.Text;
    totalState[2] = password.Text;
    return totalState;
}
   
    Public Property UserText() As String

        Get
            Return CStr(ViewState("usertext"))
        End Get
        Set(ByVal value As String)
            ViewState("usertext") = value
        End Set

    End Property
   
    Public Property PasswordText() As String

        Get
            Return CStr(ViewState("passwordtext"))
        End Get
        Set(ByVal value As String)
            ViewState("passwordtext") = value
        End Set

    End Property
   
    <System.Security.Permissions.PermissionSetAttribute(System.Security.Permissions.SecurityAction.Demand, Name:="FullTrust")> _
    Protected Overrides Sub LoadViewState(ByVal savedState As Object)

        Dim totalState As Object() = Nothing
        If Not (savedState Is Nothing) Then
            totalState = CType(savedState, Object())
            If totalState.Length <> 3 Then
                ' Throw an appropriate exception.
            End If
            ' Load base state.
            MyBase.LoadViewState(totalState(0))
            ' Load extra information specific to this control.
            If Not (totalState Is Nothing) AndAlso Not (totalState(1) Is Nothing) AndAlso Not (totalState(2) Is Nothing) Then
                UserText = CStr(totalState(1))
                PasswordText = CStr(totalState(2))
            End If
        End If

    End Sub
     
    <System.Security.Permissions.PermissionSetAttribute(System.Security.Permissions.SecurityAction.Demand, Name:="FullTrust")> _
    Protected Overrides Function SaveViewState() As Object

        Dim baseState As Object = MyBase.SaveViewState()
        Dim totalState(2) As Object
        totalState(0) = baseState
        totalState(1) = user.Text
        totalState(2) = password.Text
        Return totalState

    End Function
End Class 

Hinweise

Diese Methode wird in erster Linie von der .NET Framework-Infrastruktur verwendet und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen. Steuerelemententwickler können diese Methode jedoch überschreiben, um anzugeben, wie ein benutzerdefiniertes Serversteuerelement den Ansichtszustand wiederherstellen soll. Weitere Informationen finden Sie unter ASP.NET Übersicht über die Zustandsverwaltung.

Sie können einen Ansichtszustandswert in ein Feld laden, damit Sie ihn später nicht aus der Control.ViewState Eigenschaft abrufen müssen. Sie können den Wert auch direkt vor dem Aufrufen SaveViewState in die ViewState Eigenschaft einfügen. Dies ist eine effektive Möglichkeit, um ein Feld über Roundtrips zum Server hinweg beizubehalten.

Gilt für:

Weitere Informationen