Este artículo se tradujo de forma manual. Mueva el puntero sobre las frases del artículo para ver el texto original.
Traducción
Original
Este tema aún no ha recibido ninguna valoración - Valorar este tema

StateBag (Clase)

Administra el estado de vista de los controles de servidor ASP.NET, incluidas las páginas. Esta clase no puede heredarse.

System.Object
  System.Web.UI.StateBag

Espacio de nombres:  System.Web.UI
Ensamblado:  System.Web (en System.Web.dll)
public sealed class StateBag : IStateManager, 
	IDictionary, ICollection, IEnumerable

El tipo StateBag expone los siguientes miembros.

  Nombre Descripción
Método público StateBag() Inicializa una nueva instancia de la clase StateBag. Este es el constructor predeterminado de esta clase.
Método público StateBag(Boolean) Inicializa una nueva instancia de la clase StateBag que permite que los valores de estado almacenados no distingan mayúsculas de minúsculas.
Arriba
  Nombre Descripción
Propiedad pública Count Obtiene el número de objetos StateItem del objeto StateBag.
Propiedad pública Item Obtiene o establece el valor de un elemento almacenado en el objeto StateBag.
Propiedad pública Keys Obtiene una colección de claves que representa los elementos del objeto StateBag.
Propiedad pública Values Obtiene una colección de los valores del estado de vista almacenados en el objeto StateBag.
Arriba
  Nombre Descripción
Método público Add Agrega un nuevo objeto StateItem al objeto StateBag. Si el elemento ya existe en el objeto StateBag, este método actualiza su valor.
Método público Clear Quita todos los elementos del objeto StateBag actual.
Método público Equals(Object) Determina si el objeto Object especificado es igual al objeto Object actual. (Se hereda de Object).
Método protegido Finalize Permite que un objeto intente liberar recursos y realizar otras operaciones de limpieza antes de ser reclamado por la recolección de elementos no utilizados. (Se hereda de Object).
Método público GetEnumerator Devuelve un enumerador que recorre en iteración los pares de clave/valor de los objetos StateItem almacenados en el objeto StateBag.
Método público GetHashCode Actúa como función hash para un tipo concreto. (Se hereda de Object).
Método público GetType Obtiene el objeto Type de la instancia actual. (Se hereda de Object).
Método público IsItemDirty Comprueba un objeto StateItem almacenado en el objeto StateBag para evaluar si se ha modificado desde la llamada a Control.TrackViewState.
Método protegido MemberwiseClone Crea una copia superficial del objeto Object actual. (Se hereda de Object).
Método público Remove Quita el par clave/valor especificado del objeto StateBag.
Método público SetDirty Establece el estado del objeto StateBag, así como la propiedad Dirty de cada uno de los objetos StateItem que contiene.
Método público SetItemDirty Establece la propiedad Dirty del objeto StateItem especificado en el objeto StateBag.
Método público ToString Devuelve una cadena que representa el objeto actual. (Se hereda de Object).
Arriba
  Nombre Descripción
Método de extensión público AsParallel Habilita la paralelización de una consulta. (Definido por ParallelEnumerable).
Método de extensión público AsQueryable Convierte una interfaz IEnumerable en IQueryable. (Definido por Queryable).
Método de extensión público Cast<TResult> Convierte los elementos de IEnumerable en el tipo especificado. (Definido por Enumerable).
Método de extensión público OfType<TResult> Filtra los elementos de IEnumerable en función de un tipo especificado. (Definido por Enumerable).
Arriba
  Nombre Descripción
Implementación explícita de interfaces Método privado ICollection.CopyTo Para obtener una descripción de este miembro, vea ICollection.CopyTo.
Implementación explícita de interfaces Propiedad privada ICollection.IsSynchronized Para obtener una descripción de este miembro, vea ICollection.IsSynchronized.
Implementación explícita de interfaces Propiedad privada ICollection.SyncRoot Para obtener una descripción de este miembro, vea ICollection.SyncRoot.
Implementación explícita de interfaces Método privado IDictionary.Add Para obtener una descripción de este miembro, vea el método IDictionary.Add.
Implementación explícita de interfaces Método privado IDictionary.Contains Para obtener una descripción de este miembro, vea el método IDictionary.Contains.
Implementación explícita de interfaces Propiedad privada IDictionary.IsFixedSize Para obtener una descripción de este miembro, vea IDictionary.IsFixedSize.
Implementación explícita de interfaces Propiedad privada IDictionary.IsReadOnly Para obtener una descripción de este miembro, vea IDictionary.IsReadOnly.
Implementación explícita de interfaces Propiedad privada IDictionary.Item Para obtener una descripción de este miembro, vea IDictionary.Item.
Implementación explícita de interfaces Método privado IDictionary.Remove Para obtener una descripción de este miembro, vea Remove.
Implementación explícita de interfaces Método privado IEnumerable.GetEnumerator Para obtener una descripción de este miembro, vea IEnumerable.GetEnumerator.
Implementación explícita de interfaces Propiedad privada IStateManager.IsTrackingViewState Obtiene un valor que indica si se está realizando un seguimiento de los cambios de estado.
Implementación explícita de interfaces Método privado IStateManager.LoadViewState Restaura el estado de vista previamente guardado del objeto StateBag.
Implementación explícita de interfaces Método privado IStateManager.SaveViewState Guarda los cambios realizados en el objeto StateBag desde el momento en que la página se devolvió al servidor.
Implementación explícita de interfaces Método privado IStateManager.TrackViewState Hace que el objeto StateBag realice un seguimiento de los cambios de estado de forma que pueda conservarse de unas solicitudes a otras.
Arriba

El estado de vista de una página o control lo constituyen los valores acumulados de sus propiedades, o la vista, de dicha página o control. Se puede obtener acceso a esta clase mediante la propiedad Control.ViewState. Los controles también pueden almacenar información de estado esencial en el estado del control, pero dicha información no se almacena en forma de objeto StateBag.

Esta clase es el mecanismo de almacenamiento principal de todos los controles de servidor HTML y Web. Almacena pares atributo/valor en forma de cadenas asociadas al control. Realiza un seguimiento de los cambios realizados en estos atributos sólo después de que el método OnInit se ejecute para una solicitud de página, y guarda los cambios en el estado de vista de la página o del control.

Esta clase implementa un diccionario, donde se pueden agregar o quitar elementos del mismo modo que se haría con cualquier objeto de diccionario. Para obtener más información sobre las recolecciones de datos, como los diccionarios, vea Colecciones y estructuras de datos.

En el siguiente ejemplo de código se muestra un control Label compuesto que dispone de las propiedades Text y FontSize. Estas propiedades se guardan en el estado de vista y se recuperan del mismo cuando se llama al método Control.Render en el control.


// This control renders values stored in view state for Text and FontSize properties.
using System;
using System.Web;
using System.Web.UI;

namespace ViewStateControlSamples
{

    public class CustomLabel : Control
    {
        private const int defaultFontSize = 3;

        // Add property values to view state with set;
        // retrieve them from view state with get.
        public String Text
        {
            get 
            { 
                object o = ViewState["Text"]; 
                return (o == null)? String.Empty : (string)o;
            }

            set
            {
                ViewState["Text"] = value;
            }
        }


        public int FontSize
        {
            get
            {
                object o = ViewState["FontSize"];
                return (o == null) ? defaultFontSize : (int)o;
            }
            set
            {
                ViewState["FontSize"] = value;
            }
        }

        [System.Security.Permissions.PermissionSet(System.Security.Permissions.SecurityAction.Demand, Name = "FullTrust")]
        protected override void Render(HtmlTextWriter output)
        {
            output.Write("<font size=" + this.FontSize.ToString() + ">" + this.Text + "</font>");
        }
    }
}


.NET Framework

Compatible con: 4, 3.5, 3.0, 2.0, 1.1, 1.0

Windows 7, Windows Vista SP1 o posterior, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (no se admite Server Core), Windows Server 2008 R2 (se admite Server Core con SP1 o posterior), Windows Server 2003 SP2

.NET Framework no admite todas las versiones de todas las plataformas. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.
Todos los miembros static (Shared en Visual Basic) públicos de este tipo son seguros para la ejecución de subprocesos. No se garantiza que los miembros de instancias sean seguros para la ejecución de subprocesos.
¿Le ha resultado útil?
(Caracteres restantes: 1500)
Contenido de la comunidad Agregar