Partager via


Control.SaveViewState Méthode

Définition

Enregistre les changements d’état d’affichage du contrôle serveur qui se sont produits depuis que la page a été republiée sur le serveur.

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

Retours

Retourne l’état d’affichage actuel du contrôle serveur. Si aucun état d’affichage n’est associé au contrôle, cette méthode retourne null.

Exemples

L’exemple suivant remplace la SaveViewState méthode dans un contrôle serveur de ASP.NET personnalisé. Lorsque cette méthode est appelée, elle détermine si le contrôle a des contrôles enfants et si l’objet conteneur Page est le résultat d’une publication. Si les deux sont true, il modifie la Text propriété d’un Label contrôle serveur Web pour lire Custom Control Has Saved State. Il enregistre ensuite l’état d’affichage du contrôle en tant que tableau d’objets, nommé allStates.

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

Remarques

L’état d’affichage est l’accumulation des valeurs des propriétés d’un contrôle serveur. Ces valeurs sont automatiquement placées dans la propriété du ViewState contrôle serveur, qui est une instance de la StateBag classe . La valeur de cette propriété est ensuite conservée dans un objet string après l’étape d’état d’enregistrement du cycle de vie du contrôle serveur. Pour plus d’informations, consultez Vue d’ensemble du cycle de vie des pages ASP.NET.

Lorsque l’état d’affichage est enregistré, cet objet de chaîne est retourné au client en tant que variable stockée dans un élément HTML HIDDEN . Lorsque vous créez un contrôle serveur personnalisé avec un état d’affichage personnalisé, l’état d’affichage peut être géré explicitement avec les SaveViewState méthodes et LoadViewState . Pour plus d’informations, consultez ASP.NET Vue d’ensemble de la gestion de l’état. Pour plus d’informations sur l’implémentation d’un fournisseur d’état de session personnalisé, consultez Implémentation d’un fournisseur Session-State Store.

S’applique à

Voir aussi