Partager via


StateBag Classe

Définition

Gère l’état d’affichage des contrôles serveur ASP.NET, notamment les pages. Cette classe ne peut pas être héritée.

public ref class StateBag sealed : System::Collections::IDictionary, System::Web::UI::IStateManager
public sealed class StateBag : System.Collections.IDictionary, System.Web.UI.IStateManager
type StateBag = class
    interface IStateManager
    interface IDictionary
    interface ICollection
    interface IEnumerable
Public NotInheritable Class StateBag
Implements IDictionary, IStateManager
Héritage
StateBag
Implémente

Exemples

L’exemple de code suivant illustre un contrôle composite Label qui a Text des propriétés et FontSize . Ces propriétés sont enregistrées et récupérées dans l’état d’affichage lorsque la Control.Render méthode est appelée sur le contrôle.

// 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>");
        }
    }
}
' This control renders values stored in view state for Text and FontSize properties.

Imports System.Web
Imports System.Web.UI

Namespace ViewStateControlSamples

    Public Class CustomLabel : Inherits Control
        Private Const defaultFontSize As Integer = 3

        ' Add property values to view state with set; 
        ' retrieve them from view state with get.
        Public Property [Text]() As String
            Get
                Dim o As Object = ViewState("Text")
                If (IsNothing(o)) Then
                    Return String.Empty
                Else
                    Return CStr(o)
                End If
            End Get
            Set(ByVal value As String)
                ViewState("Text") = value
            End Set
        End Property


        Public Property FontSize() As Integer
            Get
                Dim o As Object = ViewState("FontSize")
                If (IsNothing(o)) Then
                    Return defaultFontSize
                Else
                    Return CInt(ViewState("FontSize"))
                End If

            End Get
            Set(ByVal value As Integer)
                ViewState("FontSize") = value
            End Set
        End Property
        <System.Security.Permissions.PermissionSetAttribute(System.Security.Permissions.SecurityAction.Demand, Name:="FullTrust")> _
        Protected Overrides Sub Render(ByVal Output As HtmlTextWriter)
            Output.Write("<font size=" & Me.FontSize & ">" & Me.Text & "</font>")
        End Sub

    End Class

End Namespace

Remarques

L’état d’affichage d’une page ou d’un contrôle correspond aux valeurs de propriété cumulatives de cette page ou contrôle. Vous pouvez accéder à cette classe via la Control.ViewState propriété . Les contrôles peuvent également stocker des informations d’état essentielles dans un état de contrôle, mais ces informations ne sont pas stockées en tant qu’objet StateBag .

Cette classe est le mécanisme de stockage principal pour tous les contrôles HTML et serveur web. Il stocke les paires attribut/valeur sous forme de chaînes associées au contrôle. Il effectue le suivi des modifications apportées à ces attributs uniquement après l’exécution de la OnInit méthode pour une demande de page et enregistre les modifications apportées à l’état d’affichage de la page ou du contrôle.

Cette classe implémente un dictionnaire, et vous pouvez y ajouter des éléments ou en supprimer des éléments comme vous le feriez pour n’importe quel objet de dictionnaire. Pour plus d’informations sur les collections de données, telles que les dictionnaires, consultez Collections et structures de données.

Constructeurs

StateBag()

Initialise une nouvelle instance de la classe StateBag. Il s’agit du constructeur sans paramètre de cette classe.

StateBag(Boolean)

Initialise une nouvelle instance de la classe StateBag qui permet aux valeurs d'état stockées de ne pas respecter la casse.

Propriétés

Count

Obtient le nombre d'objets StateItem dans l'objet StateBag.

Item[String]

Obtient ou définit la valeur d'un élément stocké dans l'objet StateBag.

Keys

Obtient une collection de clés représentant les éléments de l'objet StateBag.

Values

Obtient une collection des valeurs d'état d'affichage stockées dans l'objet StateBag.

Méthodes

Add(String, Object)

Ajoute un nouvel objet StateItem à l'objet StateBag. Si l'élément existe déjà dans l'objet StateBag, cette méthode met à jour la valeur de l'élément.

Clear()

Supprime tous les éléments de l'objet StateBag en cours.

Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.

(Hérité de Object)
GetEnumerator()

Retourne un énumérateur qui itère au sein de toutes les paires clé/valeur des objets StateItem stockés dans StateBag.

GetHashCode()

Fait office de fonction de hachage par défaut.

(Hérité de Object)
GetType()

Obtient le Type de l'instance actuelle.

(Hérité de Object)
IsItemDirty(String)

Contrôle un objet StateItem stocké dans l'objet StateBag pour évaluer s'il a été modifié depuis l'appel à TrackViewState().

MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
Remove(String)

Supprime la paire clé/valeur spécifiée de l'objet StateBag.

SetDirty(Boolean)

Définit l’état de l’objet StateBag ainsi que la propriété Dirty de chaque objet StateItem contenu.

SetItemDirty(String, Boolean)

Définit la propriété Dirty pour l'objet StateItem spécifié dans l'objet StateBag.

ToString()

Retourne une chaîne qui représente l'objet actuel.

(Hérité de Object)

Implémentations d’interfaces explicites

ICollection.CopyTo(Array, Int32)

Pour obtenir une description de ce membre, consultez CopyTo(Array, Int32).

ICollection.IsSynchronized

Pour obtenir une description de ce membre, consultez IsSynchronized.

ICollection.SyncRoot

Pour obtenir une description de ce membre, consultez SyncRoot.

IDictionary.Add(Object, Object)

Pour obtenir une description de ce membre, consultez Add(Object, Object).

IDictionary.Contains(Object)

Pour obtenir une description de ce membre, consultez Contains(Object).

IDictionary.IsFixedSize

Pour obtenir une description de ce membre, consultez IsFixedSize.

IDictionary.IsReadOnly

Pour obtenir une description de ce membre, consultez IsReadOnly.

IDictionary.Item[Object]

Pour obtenir une description de ce membre, consultez Item[Object].

IDictionary.Remove(Object)

Pour obtenir une description de ce membre, consultez Remove(Object).

IEnumerable.GetEnumerator()

Pour obtenir une description de ce membre, consultez GetEnumerator().

IStateManager.IsTrackingViewState

Obtient une valeur indiquant si les modifications d’état sont suivies.

IStateManager.LoadViewState(Object)

Restaure l'état d'affichage enregistré précédemment de l'objet StateBag.

IStateManager.SaveViewState()

Enregistre les modifications apportées à l’objet StateBag depuis la publication de la page sur le serveur.

IStateManager.TrackViewState()

Conduit l’objet StateBag à suivre les modifications apportées à son état pour rester persistant dans plusieurs requêtes.

Méthodes d’extension

Cast<TResult>(IEnumerable)

Effectue un cast des éléments d'un IEnumerable vers le type spécifié.

OfType<TResult>(IEnumerable)

Filtre les éléments d'un IEnumerable en fonction du type spécifié.

AsParallel(IEnumerable)

Active la parallélisation d'une requête.

AsQueryable(IEnumerable)

Convertit un IEnumerable en IQueryable.

S’applique à

Voir aussi