Control.ViewState 屬性


取得狀態資訊的字典,允許您在相同網頁的多個要求之間,儲存和還原伺服器控制項的檢視狀態。Gets a dictionary of state information that allows you to save and restore the view state of a server control across multiple requests for the same page.

 virtual property System::Web::UI::StateBag ^ ViewState { System::Web::UI::StateBag ^ get(); };
protected virtual System.Web.UI.StateBag ViewState { get; }
member this.ViewState : System.Web.UI.StateBag
Protected Overridable ReadOnly Property ViewState As StateBag



StateBag 類別的執行個體,包含伺服器控制項的檢視狀態資訊。An instance of the StateBag class that contains the server control's view-state information.



下列範例示範如何執行 Text 屬性,以從其控制項的屬性儲存和抓取其值 ViewStateThe following example demonstrates implementing a Text property that stores and retrieves its value from its control's ViewState property.

// Add property values to view state with set;
// retrieve them from view state with get.
public String Text
        object o = ViewState["Text"]; 
        return (o == null)? String.Empty : (string)o;

        ViewState["Text"] = value;

' Add property values to view state with set; 
' retrieve them from view state with get.
Public Property [Text]() As String
        Dim o As Object = ViewState("Text")
        If (IsNothing(o)) Then
            Return String.Empty
            Return CStr(o)
        End If
    End Get
    Set(ByVal value As String)
        ViewState("Text") = value
    End Set
End Property


伺服器控制項的「檢視狀態」是其所有屬性值的累積。A server control's view state is the accumulation of all its property values. 為了跨 HTTP 要求保留這些值,ASP.NET 伺服器控制項會使用這個屬性(也就是類別的實例 StateBag )來儲存屬性值。In order to preserve these values across HTTP requests, ASP.NET server controls use this property, which is an instance of the StateBag class, to store the property values. 然後,在處理後續要求時,這些值會當做變數傳遞至 HTML 隱藏的輸入專案。The values are then passed as a variable to an HTML hidden input element when subsequent requests are processed. 如需儲存伺服器控制項檢視狀態的詳細資訊,請參閱ASP.NET 狀態管理總覽For more information about saving server control view state, see ASP.NET State Management Overview.

預設會針對所有伺服器控制項啟用檢視狀態,但在某些情況下,您會想要停用它。View state is enabled for all server controls by default, but there are circumstances in which you will want to disable it. 如需詳細資訊,請參閱ASP.NET 效能總覽For more information, see ASP.NET Performance Overview.

如需字典和其使用方式的詳細資訊,請參閱集合和資料結構For information about dictionaries and how to use them, see Collections and Data Structures.