更新 : 2007 年 11 月
オブジェクトを取得または設定します。このオブジェクトは、現在の Page オブジェクトによって格納されているコントロールが Web サーバーへの HTTP 要求間で永続化するために使用しているデータを表します。
名前空間 :
System.Web.UI アセンブリ :
System.Web (System.Web.dll 内)
Public Property ControlState As Object
Dim instance As PageStatePersister
Dim value As Object
value = instance.ControlState
instance.ControlState = value
public Object ControlState { get; set; }
public:
property Object^ ControlState {
Object^ get ();
void set (Object^ value);
}
/** @property */
public Object get_ControlState()
/** @property */
public void set_ControlState(Object value)
public function get ControlState () : Object
public function set ControlState (value : Object)
コントロールの状態は、Web サーバー コントロールが機能するために必要な重要なビューステート データで構成されたオブジェクトであり、通常のビューステート情報とは別のオブジェクトに格納されます。ビューステートが Page レベルで無効になっている場合、コントロールの状態データは変更されませんが、追加の実装手順を使用する必要があります。コントロールの開発時における ViewState プロパティおよびコントロールの状態の使い方の詳細については、「ASP.NET カスタム サーバー コントロールの開発」を参照してください。
PageStatePersister クラスの派生クラスで ControlState プロパティを初期化する方法を次のコード例に示します。この例では、ControlState プロパティが Pair オブジェクトの Second フィールドに割り当てられ、ObjectStateFormatter クラスを使用してシリアル化されます。Load メソッドの呼び出し時に、ObjectStateFormatter クラスを使用してビューステートとコントロールの状態情報を逆シリアル化し、結果として生成される Pair オブジェクトの Second フィールドから、ControlState プロパティを初期化しています。このコード例は、PageStatePersister クラスのトピックで取り上げているコード例の一部分です。
'
' Load ViewState and ControlState.
'
Public Overrides Sub Load()
Dim stateStream As Stream
stateStream = GetSecureStream()
' Read the state string, using the StateFormatter.
Dim reader As New StreamReader(stateStream)
Dim serializedStatePair As String
serializedStatePair = reader.ReadToEnd
Dim statePair As Pair
Dim formatter As IStateFormatter
formatter = Me.StateFormatter
' Deserilize returns the Pair object that is serialized in
' the Save method.
statePair = CType(formatter.Deserialize(serializedStatePair), Pair)
ViewState = statePair.First
ControlState = statePair.Second
reader.Close()
stateStream.Close()
End Sub ' Load
//
// Load ViewState and ControlState.
//
public override void Load()
{
Stream stateStream = GetSecureStream();
// Read the state string, using the StateFormatter.
StreamReader reader = new StreamReader(stateStream);
IStateFormatter formatter = this.StateFormatter;
string fileContents = reader.ReadToEnd();
// Deserilize returns the Pair object that is serialized in
// the Save method.
Pair statePair = (Pair)formatter.Deserialize(fileContents);
ViewState = statePair.First;
ControlState = statePair.Second;
reader.Close();
stateStream.Close();
}
Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98
.NET Framework および .NET Compact Framework では、各プラットフォームのすべてのバージョンはサポートしていません。サポートされているバージョンについては、「.NET Framework システム要件」を参照してください。
.NET Framework
サポート対象 : 3.5、3.0、2.0
参照