SaveViewState メソッドによって保存された前回のユーザー コントロール要求からビューステート情報を復元します。
名前空間: System.Web.UI
アセンブリ: System.Web (system.web.dll 内)
構文
'宣言
Protected Overrides Sub LoadViewState ( _
savedState As Object _
)
'使用
Dim savedState As Object
Me.LoadViewState(savedState)
protected override void LoadViewState (
Object savedState
)
protected:
virtual void LoadViewState (
Object^ savedState
) override
protected void LoadViewState (
Object savedState
)
protected override function LoadViewState (
savedState : Object
)
適用できません。
パラメータ
- savedState
復元されるユーザー コントロールの状態を表す Object。
解説
このメソッドは、主に .NET Framework インフラストラクチャで使用され、コードで直接使用するためのものではありません。ただし、コントロールの開発者は、このメソッドをオーバーライドすることにより、カスタム サーバー コントロールによるビューステートの復元方法を指定できます。詳細については、「ASP.NET の状態管理の概要」を参照してください。
後で 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 Server 2000 SP4,Windows CE,Windows Millennium Edition,Windows Mobile for Pocket PC,Windows Mobile for Smartphone,Windows Server 2003,Windows XP Media Center Edition,Windows XP Professional x64 Edition,Windows XP SP2,Windows XP Starter Edition
Microsoft .NET Framework 3.0 は Windows Vista,Microsoft Windows XP SP2,および Windows Server 2003 SP1 でサポートされています。
バージョン情報
.NET Framework
サポート対象 : 3.0,2.0,1.1,1.0
参照
関連項目
UserControl クラス
UserControl メンバ
System.Web.UI 名前空間
LoadViewState
System.Web.UI.IStateManager.LoadViewState