Control.ViewState Property

Definition

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.

C#
[System.ComponentModel.Browsable(false)]
protected virtual System.Web.UI.StateBag ViewState { get; }

Property Value

An instance of the StateBag class that contains the server control's view-state information.

Attributes

Examples

The following example demonstrates implementing a Text property that stores and retrieves its value from its control's ViewState property.

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

    set
    {
        ViewState["Text"] = value;
    }
}

Remarks

A server control's view state is the accumulation of all its property values. 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. The values are then passed as a variable to an HTML hidden input element when subsequent requests are processed. 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. For more information, see ASP.NET Performance Overview.

For information about dictionaries and how to use them, see Collections and Data Structures.

Applies to

Product Versions
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1

See also