Control.SaveViewState Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Enregistre les modifications de l’état d’affichage du contrôle de serveur qui se sont produites depuis la publication de la page 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. S’il n’existe aucun état d’affichage associé au contrôle, cette méthode retourne null.
Exemples
L’exemple suivant remplace la SaveViewState méthode dans un contrôle serveur 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 vrais, 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 sous la forme d’un 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 de chaîne après l’étape d’état d’enregistrement du cycle de vie du contrôle de serveur. Pour plus d’informations, consultez ASP.NET Vue d’ensemble du cycle de vie de la page.
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 méthodes et LoadViewState les SaveViewState méthodes. 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 de magasin Session-State.