UserControl.LoadViewState メソッド
アセンブリ: System.Web (system.web.dll 内)

- savedState
復元されるユーザー コントロールの状態を表す Object。

通常、このメソッドを呼び出す必要はありません。ただし、ビューステートにカスタム情報を格納している場合は、このメソッドをオーバーライドして情報を復元します。
たとえば、後で Control.ViewState プロパティからビューステート値を取得しなくてもよいように、その値をフィールドに読み込むことができます。また、SaveViewState を呼び出す直前にビューステート値を ViewState プロパティに挿入することもできます。この方法を使用すると、サーバーへのラウンド トリップ全体でフィールドを効率的に永続化できます。

LoadViewState メソッドと SaveViewState メソッドを使用してビューステートを管理するユーザー コントロールの例を次に示します。
Public Property UserText() As String Get Return CStr(ViewState("usertext")) End Get Set(ByVal value As String) ViewState("usertext") = value End Set End Property Public Property PasswordText() As String Get Return CStr(ViewState("passwordtext")) End Get Set(ByVal value As String) ViewState("passwordtext") = value End Set End Property <System.Security.Permissions.PermissionSetAttribute(System.Security.Permissions.SecurityAction.Demand, Name:="FullTrust")> _ Protected Overrides Sub LoadViewState(ByVal savedState As Object) Dim totalState As Object() = Nothing If Not (savedState Is Nothing) Then totalState = CType(savedState, Object()) If totalState.Length <> 3 Then ' Throw an appropriate exception. End If ' Load base state. MyBase.LoadViewState(totalState(0)) ' Load extra information specific to this control. If Not (totalState Is Nothing) AndAlso Not (totalState(1) Is Nothing) AndAlso Not (totalState(2) Is Nothing) Then UserText = CStr(totalState(1)) PasswordText = CStr(totalState(2)) End If End If End Sub <System.Security.Permissions.PermissionSetAttribute(System.Security.Permissions.SecurityAction.Demand, Name:="FullTrust")> _ Protected Overrides Function SaveViewState() As Object Dim baseState As Object = MyBase.SaveViewState() Dim totalState(2) As Object totalState(0) = baseState totalState(1) = user.Text totalState(2) = password.Text Return totalState End Function End Class
public string UserText { get { return (string)ViewState["usertext"]; } set { ViewState["usertext"] = value; } } public string PasswordText { get { return (string)ViewState["passwordtext"]; } set { ViewState["passwordtext"] = value; } } [System.Security.Permissions.PermissionSet(System.Security.Permissions.SecurityAction.Demand, Name="FullTrust")] protected override void LoadViewState(object savedState) { object[] totalState = null; if (savedState != null) { totalState = (object[])savedState; if (totalState.Length != 3) { // Throw an appropriate exception. } // Load base state. base.LoadViewState(totalState[0]); // Load extra information specific to this control. if (totalState != null && totalState[1] != null && totalState[2] != null) { UserText = (string)totalState[1]; PasswordText = (string)totalState[2]; } } } [System.Security.Permissions.PermissionSet(System.Security.Permissions.SecurityAction.Demand, Name="FullTrust")] protected override object SaveViewState() { object baseState = base.SaveViewState(); object[] totalState = new object[3]; totalState[0] = baseState; totalState[1] = user.Text; totalState[2] = password.Text; return totalState; }

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 によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


UserControl クラス
UserControl メンバ
System.Web.UI 名前空間
LoadViewState
System.Web.UI.IStateManager.LoadViewState
- UserControl.LoadViewState メソッドのページへのリンク