PageStatePersister.ControlState プロパティ
アセンブリ: System.Web (system.web.dll 内)

Dim instance As PageStatePersister Dim value As Object value = instance.ControlState instance.ControlState = value
/** @property */ public Object get_ControlState () /** @property */ public void set_ControlState (Object value)
ビューステート データを格納しているオブジェクト。

コントロールの状態は、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 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


- PageStatePersister.ControlState プロパティのページへのリンク