Freigeben über


Control.SaveViewState Methode

Definition

Speichert alle Ansichtszustandsänderungen des Serversteuerelements, die seit dem Zeitpunkt aufgetreten sind, zu dem die Seite an den Server zurückgesendet wurde.

protected:
 virtual System::Object ^ SaveViewState();
protected virtual object SaveViewState ();
abstract member SaveViewState : unit -> obj
override this.SaveViewState : unit -> obj
Protected Overridable Function SaveViewState () As Object

Gibt zurück

Gibt den aktuellen Ansichtszustand des Serversteuerelements zurück. Wenn dem Steuerelement kein Ansichtszustand zugeordnet ist, gibt diese Methode null zurück.

Beispiele

Im folgenden Beispiel wird die SaveViewState -Methode in einem benutzerdefinierten ASP.NET Serversteuerelement überschrieben. Wenn diese Methode aufgerufen wird, bestimmt sie, ob das Steuerelement über untergeordnete Steuerelemente verfügt und ob das enthaltende Page Objekt das Ergebnis eines Postbacks ist. Wenn beide true sind, wird die Text -Eigenschaft eines Label Webserversteuerelements in gelesen Custom Control Has Saved State. Anschließend wird der Ansichtszustand des Steuerelements als Array von Objekten mit dem Namen allStatesgespeichert.

protected override object SaveViewState()
{  // Change Text Property of Label when this function is invoked.
   if(HasControls() && (Page.IsPostBack))
   {
      ((Label)(Controls[0])).Text = "Custom Control Has Saved State";
   }
   // Save State as a cumulative array of objects.
   object baseState = base.SaveViewState();
   string userText = UserText;
   string passwordText = PasswordText;
   object[] allStates = new object[3];
   allStates[0] = baseState;
   allStates[1] = userText;
   allStates[2] = PasswordText;
   return allStates;
}
Protected Overrides Function SaveViewState() As Object
   ' Change Text Property of Label when this function is invoked.
   If HasControls() And Page.IsPostBack Then
      CType(Controls(0), Label).Text = "Custom Control Has Saved State"
   End If
   ' Save State as a cumulative array of objects.
   Dim baseState As Object = MyBase.SaveViewState()
   Dim _userText As String = UserText
   Dim _passwordText As String = PasswordText
   Dim allStates(3) As Object
   allStates(0) = baseState
   allStates(1) = _userText
   allStates(2) = PasswordText
   Return allStates
End Function

Hinweise

Der Ansichtszustand ist die Akkumulation der Werte der Eigenschaften eines Serversteuerelements. Diese Werte werden automatisch in der -Eigenschaft des Serversteuerelements ViewState platziert, die eine Instanz der StateBag -Klasse ist. Der Wert dieser Eigenschaft wird dann in einem Zeichenfolgenobjekt nach der Speicherzustandsphase des Lebenszyklus der Serversteuerung beibehalten. Weitere Informationen finden Sie unter Übersicht über ASP.NET Seitenlebenszyklus.

Wenn der Ansichtszustand gespeichert wird, wird dieses Zeichenfolgenobjekt als Variable, die in einem HTML-Element HIDDEN gespeichert ist, an den Client zurückgegeben. Wenn Sie ein benutzerdefiniertes Serversteuerelement mit einem benutzerdefinierten Ansichtszustand erstellen, kann der Ansichtszustand explizit mit den SaveViewState Methoden und LoadViewState verwaltet werden. Weitere Informationen finden Sie unter Übersicht über ASP.NET Zustandsverwaltung. Informationen zum Implementieren eines benutzerdefinierten Sitzungszustandsanbieters finden Sie unter Implementieren eines Session-State Store-Anbieters.

Gilt für:

Weitere Informationen