Udostępnij za pośrednictwem


PageStatePersister.ControlState Właściwość

Definicja

Pobiera lub ustawia obiekt, który reprezentuje dane, które steruje bieżącym Page obiektem używanym do utrwalania żądań HTTP na serwerze sieci Web.

public:
 property System::Object ^ ControlState { System::Object ^ get(); void set(System::Object ^ value); };
public object ControlState { get; set; }
member this.ControlState : obj with get, set
Public Property ControlState As Object

Wartość właściwości

Obiekt, który zawiera dane stanu widoku.

Przykłady

W poniższym przykładzie kodu pokazano, jak klasa, która pochodzi z klasy inicjuje PageStatePersisterControlState właściwość . W tym przykładzie ControlState właściwość została przypisana do Second pola Pair obiektu i serializowana przy użyciu ObjectStateFormatter klasy . Load Gdy metoda jest wywoływana, ObjectStateFormatter klasa jest używana do deserializacji informacji o stanie widoku i stanu kontroli, a ControlState właściwość jest inicjowana z pola wynikowego PairSecond obiektu. Ten przykład kodu jest częścią większego przykładu udostępnionego PageStatePersister dla klasy .

//
// Load ViewState and ControlState.
//
public override void Load()
{
    Stream stateStream = GetSecureStream();

    // Read the state string, using the StateFormatter.
    StreamReader reader = new StreamReader(stateStream);

    IStateFormatter formatter = this.StateFormatter;
    string fileContents = reader.ReadToEnd();

    // Deserilize returns the Pair object that is serialized in
    // the Save method.
    Pair statePair = (Pair)formatter.Deserialize(fileContents);

    ViewState = statePair.First;
    ControlState = statePair.Second;
    reader.Close();
    stateStream.Close();
}
'
' Load ViewState and ControlState.
'
Public Overrides Sub Load()

    Dim stateStream As Stream
    stateStream = GetSecureStream()

    ' Read the state string, using the StateFormatter.
    Dim reader As New StreamReader(stateStream)

    Dim serializedStatePair As String
    serializedStatePair = reader.ReadToEnd
    Dim statePair As Pair

    Dim formatter As IStateFormatter
    formatter = Me.StateFormatter

    ' Deserilize returns the Pair object that is serialized in
    ' the Save method.      
    statePair = CType(formatter.Deserialize(serializedStatePair), Pair)

    ViewState = statePair.First
    ControlState = statePair.Second
    reader.Close()
    stateStream.Close()
End Sub

Uwagi

Stan kontroli to obiekt składający się z krytycznych danych stanu widoku, które muszą działać kontrolki serwera sieci Web i znajduje się w oddzielnym obiekcie od normalnych informacji o stanie widoku. Nie ma to wpływu na dane stanu kontroli, gdy stan widoku jest wyłączony na Page poziomie, ale wymaga wykonania dodatkowych kroków implementacji. Aby uzyskać więcej informacji na temat używania ViewState właściwości i stanu kontroli podczas opracowywania kontrolek, zobacz Artykuł Developing Custom ASP.NET Server Controls (Tworzenie niestandardowych kontrolek serwera ASP.NET).

Dotyczy