Sdílet prostřednictvím


UserControl.LoadViewState(Object) Metoda

Definice

Obnoví informace o stavu zobrazení z předchozího požadavku uživatelského ovládacího prvku, který byl uložen metodou SaveViewState() .

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)

Parametry

savedState
Object

Představuje Object stav uživatelského ovládacího prvku, který má být obnoven.

Příklady

Následující příklad ukazuje uživatelský ovládací prvek, který spravuje svůj stav zobrazení pomocí LoadViewState metod a SaveViewState .

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 

Poznámky

Tato metoda se primárně používá v infrastruktuře rozhraní .NET Framework a není určena k použití přímo z vašeho kódu. Vývojáři ovládacích prvků však mohou přepsat tuto metodu a určit, jak vlastní serverový ovládací prvek obnoví svůj stav zobrazení. Další informace najdete v tématu přehled správy stavu ASP.NET.

Hodnotu stavu zobrazení můžete načíst do pole, abyste ji nemuseli později načítat z Control.ViewState vlastnosti . Hodnotu ViewState můžete do vlastnosti vložit také těsně před voláním SaveViewState metody , což je efektivní způsob, jak zajistit, aby pole přetrvávalo v rámci doby odezvy na server.

Platí pro

Viz také