StateBag クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
ページを含む、ASP.NET サーバー コントロールのビューステートを管理します。 このクラスは継承できません。
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
- 継承
-
StateBag
- 実装
例
次のコード例は、 プロパティと FontSize
プロパティを持つText
複合Label
コントロールを示しています。 これらのプロパティは、 コントロールで メソッドが呼び出されたときに、 に Control.Render 保存され、ビューステートから取得されます。
// 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
注釈
ページまたはコントロールの表示状態は、そのページまたはコントロールの累積プロパティ値 (ビュー) です。 このクラスには、 プロパティを Control.ViewState 使用してアクセスできます。 コントロールは、重要な状態情報をコントロール状態に格納することもできますが、その情報はオブジェクトとして StateBag 格納されません。
このクラスは、すべての HTML および Web サーバー コントロールのプライマリ ストレージ メカニズムです。 属性と値のペアは、コントロールに関連付けられた文字列として格納されます。 これらの属性の変更は、ページ要求に対して OnInit メソッドが実行された後にのみ追跡され、ページまたはコントロールのビューステートに変更が保存されます。
このクラスはディクショナリを実装し、ディクショナリ オブジェクトと同様に、項目を追加したり、項目を削除したりできます。 ディクショナリなどのデータ コレクションの詳細については、「 コレクションとデータ構造」を参照してください。
コンストラクター
StateBag() |
StateBag クラスの新しいインスタンスを初期化します。 これは、このクラスのパラメーターなしのコンストラクターです。 |
StateBag(Boolean) |
格納された状態値が大文字小文字を区別するようにする StateBag クラスの新しいインスタンスを初期化します。 |
プロパティ
Count | |
Item[String] |
StateBag オブジェクト内に格納された項目の値を取得または設定します。 |
Keys |
StateBag オブジェクト内の項目を表すキーのコレクションを取得します。 |
Values |
StateBag オブジェクトに格納されているビューステートの値のコレクションを取得します。 |
メソッド
Add(String, Object) |
新しい StateItem オブジェクトを StateBag オブジェクトに追加します。 項目が StateBag オブジェクト内に既に存在する場合、このメソッドは項目の値を更新します。 |
Clear() |
現在の StateBag オブジェクトからすべての項目を削除します。 |
Equals(Object) |
指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。 (継承元 Object) |
GetEnumerator() |
StateItem オブジェクトに格納されている StateBag オブジェクトのすべてのキー/値ペアを反復する列挙子を返します。 |
GetHashCode() |
既定のハッシュ関数として機能します。 (継承元 Object) |
GetType() |
現在のインスタンスの Type を取得します。 (継承元 Object) |
IsItemDirty(String) |
StateItem オブジェクトに格納されている StateBag オブジェクトをチェックして、TrackViewState() への呼び出し以降にそのオブジェクトが変更されたかどうかを評価します。 |
MemberwiseClone() |
現在の Object の簡易コピーを作成します。 (継承元 Object) |
Remove(String) |
StateBag オブジェクトから、指定したキーと値のペアを削除します。 |
SetDirty(Boolean) |
StateBag オブジェクトの状態だけでなく、それに含まれる StateItem オブジェクトのそれぞれの Dirty プロパティを設定します。 |
SetItemDirty(String, Boolean) | |
ToString() |
現在のオブジェクトを表す文字列を返します。 (継承元 Object) |
明示的なインターフェイスの実装
ICollection.CopyTo(Array, Int32) |
このメンバーの詳細については、「CopyTo(Array, Int32)」をご覧ください。 |
ICollection.IsSynchronized |
このメンバーの詳細については、「IsSynchronized」をご覧ください。 |
ICollection.SyncRoot |
このメンバーの詳細については、「SyncRoot」をご覧ください。 |
IDictionary.Add(Object, Object) |
このメンバーの詳細については、「Add(Object, Object)」をご覧ください。 |
IDictionary.Contains(Object) |
このメンバーの詳細については、「Contains(Object)」をご覧ください。 |
IDictionary.IsFixedSize |
このメンバーの詳細については、「IsFixedSize」をご覧ください。 |
IDictionary.IsReadOnly |
このメンバーの詳細については、「IsReadOnly」をご覧ください。 |
IDictionary.Item[Object] |
このメンバーの詳細については、「Item[Object]」をご覧ください。 |
IDictionary.Remove(Object) |
このメンバーの詳細については、「Remove(Object)」をご覧ください。 |
IEnumerable.GetEnumerator() |
このメンバーの詳細については、「GetEnumerator()」をご覧ください。 |
IStateManager.IsTrackingViewState |
状態の変更が追跡されているかどうかを示す値を取得します。 |
IStateManager.LoadViewState(Object) |
以前に保存した StateBag オブジェクトのビュー ステートを復元します。 |
IStateManager.SaveViewState() |
ページがサーバーにポストバックされた時間以降に発生した StateBag オブジェクトへの変更を保存します。 |
IStateManager.TrackViewState() |
StateBag オブジェクトが要求間で永続化できるように状態の変更を追跡します。 |
拡張メソッド
Cast<TResult>(IEnumerable) |
IEnumerable の要素を、指定した型にキャストします。 |
OfType<TResult>(IEnumerable) |
指定された型に基づいて IEnumerable の要素をフィルター処理します。 |
AsParallel(IEnumerable) |
クエリの並列化を有効にします。 |
AsQueryable(IEnumerable) |
IEnumerable を IQueryable に変換します。 |
適用対象
こちらもご覧ください
.NET
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示