Bagikan melalui


StateBag Kelas

Definisi

Mengelola status tampilan kontrol server ASP.NET, termasuk halaman. Kelas ini tidak dapat diwariskan.

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
Warisan
StateBag
Penerapan

Contoh

Contoh kode berikut menunjukkan kontrol komposit Label yang memiliki Text properti dan FontSize . Properti ini disimpan ke dan diambil dari status tampilan ketika Control.Render metode dipanggil pada kontrol.

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

Keterangan

Status tampilan untuk halaman atau kontrol adalah nilai properti kumulatif, atau tampilan, dari halaman atau kontrol tersebut. Anda dapat mengakses kelas ini melalui Control.ViewState properti . Kontrol juga dapat menyimpan informasi status penting dalam status kontrol, tetapi informasi tersebut tidak disimpan sebagai StateBag objek.

Kelas ini adalah mekanisme penyimpanan utama untuk semua kontrol server HTML dan Web. Ini menyimpan pasangan atribut/nilai sebagai string yang terkait dengan kontrol. Ini melacak perubahan pada atribut ini hanya setelah OnInit metode dijalankan untuk permintaan halaman, dan menyimpan perubahan ke status tampilan halaman atau kontrol.

Kelas ini menerapkan kamus, dan Anda dapat menambahkan item ke dalamnya atau menghapus item darinya seperti yang Anda lakukan pada objek kamus apa pun. Untuk informasi selengkapnya tentang pengumpulan data, seperti kamus, lihat Koleksi dan Struktur Data.

Konstruktor

StateBag()

Menginisialisasi instans baru kelas StateBag. Ini adalah konstruktor tanpa parameter untuk kelas ini.

StateBag(Boolean)

Menginisialisasi instans StateBag baru kelas yang memungkinkan nilai status tersimpan tidak peka huruf besar/kecil.

Properti

Count

Mendapatkan jumlah StateItem objek dalam StateBag objek .

Item[String]

Mendapatkan atau mengatur nilai item yang disimpan dalam StateBag objek .

Keys

Mendapatkan kumpulan kunci yang mewakili item dalam StateBag objek .

Values

Mendapatkan kumpulan nilai status tampilan yang disimpan dalam StateBag objek .

Metode

Add(String, Object)

Menambahkan objek baru StateItem ke StateBag objek . Jika item sudah ada di StateBag objek , metode ini memperbarui nilai item.

Clear()

Menghapus semua item dari objek saat ini StateBag .

Equals(Object)

Menentukan apakah objek yang ditentukan sama dengan objek saat ini.

(Diperoleh dari Object)
GetEnumerator()

Mengembalikan enumerator yang mengulangi semua pasangan kunci/nilai objek yang StateItem disimpan dalam StateBag objek.

GetHashCode()

Berfungsi sebagai fungsi hash default.

(Diperoleh dari Object)
GetType()

Mendapatkan instans Type saat ini.

(Diperoleh dari Object)
IsItemDirty(String)

Memeriksa objek yang StateItem disimpan dalam StateBag objek untuk mengevaluasi apakah objek telah dimodifikasi sejak panggilan ke TrackViewState().

MemberwiseClone()

Membuat salinan dangkal dari yang saat ini Object.

(Diperoleh dari Object)
Remove(String)

Menghapus pasangan kunci/nilai yang ditentukan dari StateBag objek .

SetDirty(Boolean)

Mengatur status StateBag objek serta Dirty properti masing-masing objek yang StateItem terkandung di dalamnya.

SetItemDirty(String, Boolean)

Dirty Mengatur properti untuk objek yang ditentukan StateItem dalam StateBag objek .

ToString()

Mengembalikan string yang mewakili objek saat ini.

(Diperoleh dari Object)

Implementasi Antarmuka Eksplisit

ICollection.CopyTo(Array, Int32)

Untuk deskripsi anggota ini, lihat CopyTo(Array, Int32).

ICollection.IsSynchronized

Untuk deskripsi anggota ini, lihat IsSynchronized.

ICollection.SyncRoot

Untuk deskripsi anggota ini, lihat SyncRoot.

IDictionary.Add(Object, Object)

Untuk deskripsi anggota ini, lihat Add(Object, Object).

IDictionary.Contains(Object)

Untuk deskripsi anggota ini, lihat Contains(Object).

IDictionary.IsFixedSize

Untuk deskripsi anggota ini, lihat IsFixedSize.

IDictionary.IsReadOnly

Untuk deskripsi anggota ini, lihat IsReadOnly.

IDictionary.Item[Object]

Untuk deskripsi anggota ini, lihat Item[Object].

IDictionary.Remove(Object)

Untuk deskripsi anggota ini, lihat Remove(Object).

IEnumerable.GetEnumerator()

Untuk deskripsi anggota ini, lihat GetEnumerator().

IStateManager.IsTrackingViewState

Mendapatkan nilai yang menunjukkan apakah perubahan status sedang dilacak.

IStateManager.LoadViewState(Object)

Memulihkan status tampilan objek yang StateBag disimpan sebelumnya.

IStateManager.SaveViewState()

Menyimpan perubahan pada StateBag objek sejak halaman diposting kembali ke server.

IStateManager.TrackViewState()

StateBag Menyebabkan objek melacak perubahan pada statusnya sehingga dapat dipertahankan di seluruh permintaan.

Metode Ekstensi

Cast<TResult>(IEnumerable)

Mentransmisikan elemen dari IEnumerable ke jenis yang ditentukan.

OfType<TResult>(IEnumerable)

Memfilter elemen berdasarkan IEnumerable jenis tertentu.

AsParallel(IEnumerable)

Mengaktifkan paralelisasi kueri.

AsQueryable(IEnumerable)

Mengonversi menjadi IEnumerableIQueryable.

Berlaku untuk

Lihat juga