EnableViewState Property
Collapse the table of content
Expand the table of content

Page.EnableViewState Property


Gets or sets a value indicating whether the page maintains its view state, and the view state of any server controls it contains, when the current page request ends.

Namespace:   System.Web.UI
Assembly:  System.Web (in System.Web.dll)

public override bool EnableViewState { get; set; }

Property Value

Type: System.Boolean

true if the page maintains its view state; otherwise, false. The default is true.

For information about why you might want to disable view state, see Control.EnableViewState.

Even if EnableViewState is false, the page might contain a hidden view state field that is used by ASP.NET to detect a postback.

The following code example sets the EnableViewState property to false when the page is loaded. This disables view state for the Page object, meaning that neither view-state information for the page nor any controls contained by the page are saved.

System_CAPS_security Security Note

This example has a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see Script Exploits Overview.

public class WebPage : Page
   private MyForm myFormObj;
   private Label label1;
   private Label label2;
   private TextBox textBoxObj;
   private Button buttonObj;

   public WebPage()
      Page.Init += new System.EventHandler(Page_Init);

   private void Page_Load(object sender, System.EventArgs e)
      // Comment the following line to maintain page view state.
      Page.EnableViewState = false;
      myFormObj.Method = "post";
      textBoxObj.Text = "Welcome to .NET";

      label1.Text = "Enter a name";
      buttonObj.Text = "ClickMe";
      buttonObj.Click += new EventHandler(Button_Click);
   private void Button_Click(object sender, EventArgs e)
      String temp = "<br>Name is " + textBoxObj.Text + "<br>";
      temp += "Saved content of previous page is " + ViewState["name"] as String;
      label2.Text = temp;
   protected override void LoadViewState(object viewState)
      if(viewState != null)
   protected override object SaveViewState()
      ViewState["name"] = textBoxObj.Text;
      return base.SaveViewState();
   private void Page_Init(object sender, EventArgs e)
      this.Load += new System.EventHandler(this.Page_Load);

      myFormObj = new MyForm();
      label1 = new Label();
      label2 = new Label();
      textBoxObj = new TextBox();
      buttonObj = new Button();

.NET Framework
Available since 1.1
Return to top
© 2015 Microsoft