每个web控件都有个ViewState值,如果一个页面有太多的web控件而不禁用他们的viewstate值的话,会让页面速度大大降低。那么哪些控件的EnableViewState="false" 哪些控件的EnableViewState="true"呢?
1、TextBox类型的控件,如果你只需要取TextBox里面的值,而不是要他响应什么事件,那他的viewstate是可以禁用的。
2、Button类型的控件,如果你只需要他响应单击事件,那他的viewstate可以禁用。
3、DropDownList、CheckBox等控件,如果前台能确定值不用动态绑定,且不用响应什么事件的话则可禁用ViewState。
4、FileUpload控件的ViewState可以禁用。
下面列出部分控件在禁用ViewState后,事件对应的情况。
Repeater
操作:ItemCommand(失效)
数据:DataBinding(可用)
行为:ItemCreated(可用) , ItemDataBound(可用)
Button
操作:Click (可用), Command(待验证)
数据:DataBinding(可用)
DropDownList
操作:SelectedIndexChanged(可用),TextChanged(待验证)
1、TextBox类型的控件,如果你只需要取TextBox里面的值,而不是要他响应什么事件,那他的viewstate是可以禁用的。
2、Button类型的控件,如果你只需要他响应单击事件,那他的viewstate可以禁用。
3、DropDownList、CheckBox等控件,如果前台能确定值不用动态绑定,且不用响应什么事件的话则可禁用ViewState。
4、FileUpload控件的ViewState可以禁用。
下面列出部分控件在禁用ViewState后,事件对应的情况。
Repeater
操作:ItemCommand(失效)
数据:DataBinding(可用)
行为:ItemCreated(可用) , ItemDataBound(可用)
Button
操作:Click (可用), Command(待验证)
数据:DataBinding(可用)
DropDownList
操作:SelectedIndexChanged(可用),TextChanged(待验证)
数据:DataBinding(可用),DataBound(可用)