Compartir a través de


Control.SaveViewState Método

Definición

Guarda los cambios realizados en el estado de vista del control de servidor desde que la página volvió a publicarse en el servidor.

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

Devoluciones

Devuelve el estado de vista actual del control de servidor. Si no hay ningún estado de vista asociado al control, este método devuelve null.

Ejemplos

En el ejemplo siguiente se invalida el SaveViewState método en un control de servidor de ASP.NET personalizado. Cuando se invoca este método, determina si el control tiene controles secundarios y si el objeto contenedor Page es el resultado de un postback. Si ambos son true, cambia la Text propiedad de un Label control de servidor web para leer Custom Control Has Saved State. A continuación, guarda el estado de vista del control como una matriz de objetos, denominado 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

Comentarios

El estado de vista es la acumulación de los valores de las propiedades de un control de servidor. Estos valores se colocan automáticamente en la propiedad del control de ViewState servidor, que es una instancia de la StateBag clase . A continuación, el valor de esta propiedad se conserva en un objeto de cadena después de la fase de estado de guardado del ciclo de vida del control de servidor. Para obtener más información, vea información general sobre el ciclo de vida de la página ASP.NET.

Cuando se guarda el estado de vista, este objeto de cadena se devuelve al cliente como una variable que se almacena en un elemento HTML HIDDEN . Al crear un control de servidor personalizado con un estado de vista personalizado, el estado de vista se puede administrar explícitamente con los SaveViewState métodos y LoadViewState . Para obtener más información, consulte ASP.NET State Management Overview. Para obtener información sobre cómo implementar un proveedor de estado de sesión personalizado, consulte Implementación de un proveedor de Session-State Store.

Se aplica a

Consulte también