Gestisce lo stato di visualizzazione dei controlli server ASP.NET, incluse le pagine. La classe non può essere ereditata.
System.Web.UI.StateBag
Spazio dei nomi: System.Web.UI
Assembly: System.Web (in System.Web.dll)
Public NotInheritable Class StateBag _ Implements IStateManager, IDictionary, ICollection, IEnumerable
public sealed class StateBag : IStateManager, IDictionary, ICollection, IEnumerable
public ref class StateBag sealed : IStateManager, IDictionary, ICollection, IEnumerable
[<Sealed>] type StateBag = class interface IStateManager interface IDictionary interface ICollection interface IEnumerable end
Il tipo StateBag espone i seguenti membri.
| Nome | Descrizione | |
|---|---|---|
|
StateBag() | Inizializza una nuova istanza della classe StateBag. È il costruttore predefinito per questa classe. |
|
StateBag(Boolean) | Inizializza una nuova istanza della classe StateBag che consente di ignorare la distinzione tra maiuscole e minuscole per i valori di stato memorizzati. |
| Nome | Descrizione | |
|---|---|---|
|
Count | Ottiene il numero di oggetti StateItem presenti nell'oggetto StateBag. |
|
Item | Ottiene o imposta il valore di un elemento memorizzato nell'oggetto StateBag. |
|
Keys | Ottiene un insieme di chiavi che rappresentano gli elementi nell'oggetto StateBag. |
|
Values | Ottiene un insieme dei valori dello stato di visualizzazione memorizzati nell'oggetto StateBag. |
| Nome | Descrizione | |
|---|---|---|
|
Add | Aggiunge un nuovo oggetto StateItem all'oggetto StateBag. Se l'elemento è già presente nell'oggetto StateBag, questo metodo aggiorna il valore dell'elemento. |
|
Clear | Rimuove tutti gli elementi dall'oggetto StateBag corrente. |
|
Equals(Object) | Determina se l'oggetto Object specificato è uguale all'oggetto Object corrente. (Ereditato da Object) |
|
Finalize | Consente a un oggetto di provare a liberare risorse ed eseguire altre operazioni di pulitura prima che l'oggetto stesso venga recuperato dalla procedura di Garbage Collection. (Ereditato da Object) |
|
GetEnumerator | Restituisce un enumeratore che scorre tutte le coppie chiave/valore degli oggetti StateItem archiviati nell'oggetto StateBag. |
|
GetHashCode | Funge da funzione hash per un determinato tipo. (Ereditato da Object) |
|
GetType | Ottiene l'oggetto Type dell'istanza corrente. (Ereditato da Object) |
|
IsItemDirty | Verifica un oggetto StateItem archiviato nell'oggetto StateBag per valutare se ha subito delle modifiche dopo la chiamata del metodo Control.TrackViewState. |
|
MemberwiseClone | Consente di creare una copia dei riferimenti dell'oggetto Object corrente. (Ereditato da Object) |
|
Remove | Rimuove la coppia chiave/valore specificata dall'oggetto StateBag. |
|
SetDirty | Imposta lo stato dell'oggetto StateBag nonché la proprietà Dirty di tutti gli oggetti StateItem in esso contenuti. |
|
SetItemDirty | Imposta la proprietà Dirty per l'oggetto StateItem specificato contenuto nell'oggetto StateBag. |
|
ToString | Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |
| Nome | Descrizione | |
|---|---|---|
|
AsParallel | Consente la parallelizzazione di una query. (Definito da ParallelEnumerable). |
|
AsQueryable | Converte un oggetto IEnumerable in un oggetto IQueryable. (Definito da Queryable). |
|
Cast<TResult> | Converte gli elementi di un oggetto IEnumerable nel tipo specificato. (Definito da Enumerable). |
|
OfType<TResult> | Filtra gli elementi di un oggetto IEnumerable in base a un tipo specificato. (Definito da Enumerable). |
| Nome | Descrizione | |
|---|---|---|
|
ICollection.CopyTo | Per una descrizione di questo membro, vedere ICollection.CopyTo. |
|
ICollection.IsSynchronized | Per una descrizione di questo membro, vedere ICollection.IsSynchronized. |
|
ICollection.SyncRoot | Per una descrizione di questo membro, vedere ICollection.SyncRoot. |
|
IDictionary.Add | Per una descrizione di questo membro, vedere IDictionary.Add. |
|
IDictionary.Contains | Per una descrizione di questo membro, vedere IDictionary.Contains. |
|
IDictionary.IsFixedSize | Per una descrizione di questo membro, vedere IDictionary.IsFixedSize. |
|
IDictionary.IsReadOnly | Per una descrizione di questo membro, vedere IDictionary.IsReadOnly. |
|
IDictionary.Item | Per una descrizione di questo membro, vedere il metodo IDictionary.Item. |
|
IDictionary.Remove | Per una descrizione di questo membro, vedere Remove. |
|
IEnumerable.GetEnumerator | Per una descrizione di questo membro, vedere IEnumerable.GetEnumerator. |
|
IStateManager.IsTrackingViewState | Ottiene un valore che indica se le modifiche dello stato vengono registrate. |
|
IStateManager.LoadViewState | Ripristina lo stato di visualizzazione salvato in precedenza dell'oggetto StateBag. |
|
IStateManager.SaveViewState | Salva le modifiche apportate all'oggetto StateBag dal momento in cui è stato eseguito il postback della pagina sul server. |
|
IStateManager.TrackViewState | Impone all'oggetto StateBag di registrare le modifiche del relativo stato per garantire la persistenza tra le richieste. |
Lo stato di visualizzazione di una pagina o un controllo è costituito dall'insieme dei valori delle proprietà, ovvero dalla visualizzazione, di tale pagina o controllo. È possibile accedere a questa classe tramite la proprietà Control.ViewState. I controlli possono inoltre archiviare informazioni fondamentali sullo stato nello stato del controllo, ma tali informazioni non vengono archiviate come oggetto StateBag.
Questa classe rappresenta il meccanismo di memorizzazione principale per tutti i controlli server HTML e Web. Memorizza le coppie attributo/valore come stringhe associate al controllo. Registra le modifiche apportate agli attributi solo dopo l'esecuzione del metodo OnInit per una richiesta di pagina e salva le modifiche dello stato di visualizzazione della pagina o del controllo.
Questa classe implementa un dizionario nel quale è possibile aggiungere o rimuovere elementi, come per qualsiasi oggetto dizionario. Per ulteriori informazioni sugli insiemi di dati, come ad esempio i dizionari, vedere Insiemi e strutture di dati.
Nell'esempio di codice riportato di seguito viene illustrato un controllo Label composito che dispone delle proprietà Text e FontSize. Queste proprietà vengono salvate e recuperate dallo stato di visualizzazione quando il metodo Control.Render viene chiamato sul controllo.
' This control renders values stored in view state for Text and FontSize properties. Imports System 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
// 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
Supportato in: 4, 3.5, 3.0, 2.0, 1.1, 1.0Windows 7, Windows Vista SP1 o versione successiva, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (componenti di base del server non supportati), Windows Server 2008 R2 (componenti di base del server supportati con SP1 o versione successiva), Windows Server 2003 SP2
.NET Framework non supporta tutte le versioni di ciascuna piattaforma. Per un elenco delle versioni supportate, vedere Requisiti di sistema di .NET Framework.