StateBag Sınıf

Tanım

Sayfalar dahil olmak üzere ASP.NET sunucu denetimlerinin görünüm durumunu yönetir. Bu sınıf devralınamaz.

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
Devralma
StateBag
Uygulamalar

Örnekler

Aşağıdaki kod örneğinde ve FontSize özelliklerine sahip Text bileşik Label denetim gösterilmektedir. Bu özellikler, denetimde yöntemi çağrıldığında Control.Render görünüm durumuna kaydedilir ve görünüm durumundan alınır.

// 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

Açıklamalar

Bir sayfanın veya denetimin görünüm durumu, o sayfanın veya denetimin birikmeli özellik değerleri veya görünümüdür. Bu sınıfa Control.ViewState özelliği aracılığıyla erişebilirsiniz. Denetimler, temel durum bilgilerini denetim durumunda da depolayabilir, ancak bu bilgiler nesne StateBag olarak depolanmaz.

Bu sınıf, tüm HTML ve Web sunucusu denetimleri için birincil depolama mekanizmasıdır. Öznitelik/değer çiftlerini denetimle ilişkili dizeler olarak depolar. Yalnızca bir sayfa isteği için yöntem yürütüldükten sonra OnInit bu özniteliklerde yapılan değişiklikleri izler ve değişiklikleri sayfanın veya denetimin görünüm durumuna kaydeder.

Bu sınıf bir sözlük uygular ve buna öğe ekleyebilir veya herhangi bir sözlük nesnesi gibi öğeleri kaldırabilirsiniz. Sözlükler gibi veri koleksiyonları hakkında daha fazla bilgi için bkz. Koleksiyonlar ve Veri Yapıları.

Oluşturucular

StateBag()

StateBag sınıfının yeni bir örneğini başlatır. Bu, bu sınıf için parametresiz oluşturucudur.

StateBag(Boolean)

Depolanmış durum değerlerinin StateBag büyük/küçük harfe duyarlı olmasına izin veren sınıfının yeni bir örneğini başlatır.

Özellikler

Count

Nesnedeki StateBag nesne sayısını StateItem alır.

Item[String]

Nesnede StateBag depolanan bir öğenin değerini alır veya ayarlar.

Keys

Nesnedeki StateBag öğeleri temsil eden bir anahtar koleksiyonu alır.

Values

nesnesinde depolanan görünüm durumu değerlerinin StateBag koleksiyonunu alır.

Yöntemler

Add(String, Object)

Nesneye StateBag yeni StateItem bir nesne ekler. Öğe nesnesinde StateBag zaten varsa, bu yöntem öğenin değerini güncelleştirir.

Clear()

Geçerli StateBag nesneden tüm öğeleri kaldırır.

Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
GetEnumerator()

Nesnede depolanan StateBag nesnelerin tüm anahtar/değer çiftleri StateItem üzerinde yineleyen bir numaralandırıcı döndürür.

GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetType()

Type Geçerli örneğini alır.

(Devralındığı yer: Object)
IsItemDirty(String)

çağrısından StateBag TrackViewState()sonra değiştirilip değiştirilmediğini değerlendirmek için nesnede depolanan bir StateItem nesneyi denetler.

MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: Object)
Remove(String)

Belirtilen anahtar/değer çiftini StateBag nesneden kaldırır.

SetDirty(Boolean)

Nesnenin StateBag durumunu ve Dirty içerdiği nesnelerin her birinin StateItem özelliğini ayarlar.

SetItemDirty(String, Boolean)

Nesnede Dirty belirtilen StateItem nesnenin StateBag özelliğini ayarlar.

ToString()

Geçerli nesneyi temsil eden dizeyi döndürür.

(Devralındığı yer: Object)

Belirtik Arabirim Kullanımları

ICollection.CopyTo(Array, Int32)

Bu üyenin açıklaması için bkz CopyTo(Array, Int32). .

ICollection.IsSynchronized

Bu üyenin açıklaması için bkz IsSynchronized. .

ICollection.SyncRoot

Bu üyenin açıklaması için bkz SyncRoot. .

IDictionary.Add(Object, Object)

Bu üyenin açıklaması için bkz Add(Object, Object). .

IDictionary.Contains(Object)

Bu üyenin açıklaması için bkz Contains(Object). .

IDictionary.IsFixedSize

Bu üyenin açıklaması için bkz IsFixedSize. .

IDictionary.IsReadOnly

Bu üyenin açıklaması için bkz IsReadOnly. .

IDictionary.Item[Object]

Bu üyenin açıklaması için bkz Item[Object]. .

IDictionary.Remove(Object)

Bu üyenin açıklaması için bkz Remove(Object). .

IEnumerable.GetEnumerator()

Bu üyenin açıklaması için bkz GetEnumerator(). .

IStateManager.IsTrackingViewState

Durum değişikliklerinin izlenmekte olup olmadığını gösteren bir değer alır.

IStateManager.LoadViewState(Object)

Nesnenin daha önce kaydedilmiş görünüm durumunu StateBag geri yükler.

IStateManager.SaveViewState()

Sayfanın sunucuya StateBag geri gönderildiği zamandan bu yana nesnedeki değişiklikleri kaydeder.

IStateManager.TrackViewState()

Nesnenin StateBag , istekler arasında kalıcı hale getirmek için durumundaki değişiklikleri izlemesine neden olur.

Uzantı Metotları

Cast<TResult>(IEnumerable)

öğesinin IEnumerable öğelerini belirtilen türe atar.

OfType<TResult>(IEnumerable)

Bir öğesinin IEnumerable öğelerini belirtilen türe göre filtreler.

AsParallel(IEnumerable)

Sorgunun paralelleştirilmesini sağlar.

AsQueryable(IEnumerable)

bir IEnumerable öğesini öğesine IQueryabledönüştürür.

Şunlara uygulanır

Ayrıca bkz.