Freigeben über


UserControl.LoadViewState-Methode

Stellt die Informationen über den Ansichtszustand aus einer früheren Benutzersteuerelement-Anforderung wieder her, die durch die SaveViewState-Methode gespeichert wurden.

Namespace: System.Web.UI
Assembly: System.Web (in system.web.dll)

Syntax

'Declaration
Protected Overrides Sub LoadViewState ( _
    savedState As Object _
)
'Usage
Dim savedState As Object

Me.LoadViewState(savedState)
protected override void LoadViewState (
    Object savedState
)
protected:
virtual void LoadViewState (
    Object^ savedState
) override
protected void LoadViewState (
    Object savedState
)
protected override function LoadViewState (
    savedState : Object
)

Parameter

  • savedState
    Ein Object, das den wiederherzustellenden Zustand des Benutzersteuerelements darstellt.

Hinweise

Diese Methode brauchen Sie i. d. R. nicht aufzurufen. Wenn Sie jedoch benutzerdefinierte Informationen im Ansichtszustand speichern, können Sie dafür diese Methode überschreiben.

Sie können z. B. einen Ansichtszustandswert in ein Feld laden, sodass Sie ihn später nicht aus der Control.ViewState-Eigenschaft abrufen müssen. Sie können den Wert außerdem kurz vor dem Aufruf von SaveViewState in die ViewState-Eigenschaft einfügen. Dies ein praktisches Mittel, um ein Feld im Verlauf von Schleifen zum Server beizubehalten.

Beispiel

Im folgenden Beispiel wird veranschaulicht, wie ein Benutzersteuerelement seinen Ansichtszustand mithilfe der LoadViewState-Methode und der SaveViewState-Methode verwaltet.

   
    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 
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;
}

Plattformen

Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

Siehe auch

Referenz

UserControl-Klasse
UserControl-Member
System.Web.UI-Namespace
LoadViewState
System.Web.UI.IStateManager.LoadViewState