StateBag Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Zarządza stanem widoku kontrolek serwera ASP.NET, w tym stron. Klasa ta nie może być dziedziczona.
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
- Dziedziczenie
-
StateBag
- Implementuje
Przykłady
Poniższy przykład kodu przedstawia złożoną kontrolkę Label
, która ma Text
właściwości i FontSize
. Te właściwości są zapisywane i pobierane ze stanu widoku, gdy Control.Render metoda jest wywoływana w kontrolce.
// 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
Uwagi
Stan widoku strony lub kontrolki to skumulowane wartości właściwości lub widoku tej strony lub kontrolki. Dostęp do tej klasy można uzyskać za pośrednictwem Control.ViewState właściwości . Kontrolki mogą również przechowywać podstawowe informacje o stanie kontroli, ale te informacje nie są przechowywane jako StateBag obiekt.
Ta klasa jest podstawowym mechanizmem magazynowania dla wszystkich kontrolek HTML i serwera sieci Web. Przechowuje pary atrybutów/wartości jako ciągi skojarzone z kontrolką. Śledzi zmiany tych atrybutów tylko po wykonaniu OnInit metody dla żądania strony i zapisuje zmiany w stanie widoku strony lub kontrolki.
Ta klasa implementuje słownik i można do niego dodawać elementy lub usuwać z niego elementy, tak jak w przypadku dowolnego obiektu słownika. Aby uzyskać więcej informacji na temat zbierania danych, takich jak słowniki, zobacz Kolekcje i struktury danych.
Konstruktory
StateBag() |
Inicjuje nowe wystąpienie klasy StateBag. Jest to konstruktor bez parametrów dla tej klasy. |
StateBag(Boolean) |
Inicjuje StateBag nowe wystąpienie klasy, które umożliwia przechowywanie wartości stanu jako niewrażliwe na wielkość liter. |
Właściwości
Count | |
Item[String] |
Pobiera lub ustawia wartość elementu przechowywanego StateBag w obiekcie. |
Keys |
Pobiera kolekcję kluczy reprezentujących elementy w StateBag obiekcie. |
Values |
Pobiera kolekcję wartości stanu widoku przechowywanych w StateBag obiekcie. |
Metody
Add(String, Object) |
Dodaje nowy StateItem obiekt do StateBag obiektu. Jeśli element już istnieje w StateBag obiekcie, ta metoda aktualizuje wartość elementu. |
Clear() |
Usuwa wszystkie elementy z bieżącego StateBag obiektu. |
Equals(Object) |
Określa, czy dany obiekt jest taki sam, jak bieżący obiekt. (Odziedziczone po Object) |
GetEnumerator() |
Zwraca moduł wyliczający, który iteruje wszystkie pary StateItem klucz/wartość obiektów przechowywanych w StateBag obiekcie. |
GetHashCode() |
Służy jako domyślna funkcja skrótu. (Odziedziczone po Object) |
GetType() |
Type Pobiera bieżące wystąpienie. (Odziedziczone po Object) |
IsItemDirty(String) |
StateItem Sprawdza obiekt przechowywany w obiekcie, StateBag aby ocenić, czy został zmodyfikowany od wywołania metody TrackViewState(). |
MemberwiseClone() |
Tworzy płytkią kopię bieżącego Objectelementu . (Odziedziczone po Object) |
Remove(String) |
Usuwa określoną parę klucz/wartość z StateBag obiektu. |
SetDirty(Boolean) |
Ustawia stan StateBag obiektu, a także Dirty właściwość każdego z StateItem obiektów zawartych w nim. |
SetItemDirty(String, Boolean) |
Dirty Ustawia właściwość dla określonego StateItem obiektu w StateBag obiekcie. |
ToString() |
Zwraca ciąg reprezentujący bieżący obiekt. (Odziedziczone po Object) |
Jawne implementacje interfejsu
ICollection.CopyTo(Array, Int32) |
Aby uzyskać opis tego elementu członkowskiego, zobacz CopyTo(Array, Int32). |
ICollection.IsSynchronized |
Aby uzyskać opis tego elementu członkowskiego, zobacz IsSynchronized. |
ICollection.SyncRoot |
Aby uzyskać opis tego elementu członkowskiego, zobacz SyncRoot. |
IDictionary.Add(Object, Object) |
Aby uzyskać opis tego elementu członkowskiego, zobacz Add(Object, Object). |
IDictionary.Contains(Object) |
Aby uzyskać opis tego elementu członkowskiego, zobacz Contains(Object). |
IDictionary.IsFixedSize |
Aby uzyskać opis tego elementu członkowskiego, zobacz IsFixedSize. |
IDictionary.IsReadOnly |
Aby uzyskać opis tego elementu członkowskiego, zobacz IsReadOnly. |
IDictionary.Item[Object] |
Aby uzyskać opis tego elementu członkowskiego, zobacz Item[Object]. |
IDictionary.Remove(Object) |
Aby uzyskać opis tego elementu członkowskiego, zobacz Remove(Object). |
IEnumerable.GetEnumerator() |
Aby uzyskać opis tego elementu członkowskiego, zobacz GetEnumerator(). |
IStateManager.IsTrackingViewState |
Pobiera wartość wskazującą, czy zmiany stanu są śledzone. |
IStateManager.LoadViewState(Object) |
Przywraca wcześniej zapisany stan StateBag widoku obiektu. |
IStateManager.SaveViewState() |
Zapisuje zmiany w StateBag obiekcie od czasu opublikowania strony z powrotem na serwerze. |
IStateManager.TrackViewState() |
StateBag Powoduje, że obiekt śledzi zmiany stanu, aby można było je utrwalać między żądaniami. |
Metody rozszerzania
Cast<TResult>(IEnumerable) |
Rzutuje elementy elementu IEnumerable do określonego typu. |
OfType<TResult>(IEnumerable) |
Filtruje elementy elementu IEnumerable na podstawie określonego typu. |
AsParallel(IEnumerable) |
Umożliwia równoległość zapytania. |
AsQueryable(IEnumerable) |
Konwertuje element IEnumerable na .IQueryable |