Control.EnableViewState Control.EnableViewState Control.EnableViewState Control.EnableViewState Property


要求元クライアントに対して、サーバー コントロールがそのビュー状態と、そこに含まれる任意の子のコントロールのビュー状態を保持するかどうかを示す値を取得または設定します。Gets or sets a value indicating whether the server control persists its view state, and the view state of any child controls it contains, to the requesting client.

 virtual property bool EnableViewState { bool get(); void set(bool value); };
public virtual bool EnableViewState { get; set; }
member this.EnableViewState : bool with get, set
Public Overridable Property EnableViewState As Boolean


サーバー コントロールがビュー状態を保持する場合は true、それ以外の場合は falsetrue if the server control maintains its view state; otherwise false. 既定値は、true です。The default is true.

次の例のセット、EnableViewStateプロパティをfalseします。The following example sets the EnableViewState property to false.

void Page_Load(object sender, System.EventArgs e)
      // Set EnableViewState to false to disable saving of view state 
      // information.
      myControl.EnableViewState = false;
      if (!IsPostBack)
         display.Enabled = false;
Sub Page_Load(sender As Object, e As System.EventArgs)
   ' Set EnableViewState to false to disable saving of view state 
   ' information.
   myControl.EnableViewState = False
   If Not IsPostBack Then
      display.Enabled = False
   End If 
End Sub


ビュー ステートには、HTTP 要求間での状態を維持するためにサーバー コントロールができるようにします。View state enables a server control to maintain its state across HTTP requests. すべての次の条件が満たされた場合、コントロールのビューステートが有効です。View state for a control is enabled if all of the following conditions are met:

詳細については、ViewStateMode プロパティを参照してください。For more information, see the ViewStateMode 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 uses an instance of the StateBag class to store the property values. 値は、後続の要求が処理されるときに、変数としてを非表示フィールド渡されます。The values are then passed as a variable to a hidden field when subsequent requests are processed. ビュー ステートの詳細については、次を参照してください。 ASP.NET ビュー状態の概要します。For more information about view state, see ASP.NET View State Overview.

アプリケーションのパフォーマンスを向上させるために特にのビュー ステートを無効にする適切な場合もあります。There are times when it is appropriate to disable view state, particularly to improve application performance. たとえば、サーバー コントロールにはデータベースの要求をロードする場合、このこのプロパティに設定falseします。For example, if you are loading a database request into a server control, set this property to false. そうでない場合は、データベース クエリによってのみ上書きされるサーバー コントロールにビューステートの読み込みのプロセッサ時間を無駄になります。If you do not, processor time will be wasted loading view state into the server control that will only be overridden by the database query. 場合EnableViewStatefalseコントロールの状態を使用して、コントロールに固有であり、ビューの state プロパティのように無効にすることはできませんのプロパティ情報を保持することができます。If EnableViewState is false, you can use the control state to persist property information that is specific to a control and cannot be turned off like the view state property. コントロールの状態とビュー ステートの違いの詳細については、次を参照してください。コントロールの状態とします。ビュー ステート例します。For more information on the difference between control state and view state, see Control State vs. View State Example.

有効または宣言によって ASP.NET ページのビューステートを無効にする方法については、次を参照してください。 @ページします。For information about how to enable or disable view state declaratively for an ASP.NET page, see @ Page.