1、IsPostBack原理
1.1 所有的服务端控件,都必须放在runat="server"的表单里面,runat="server"的表单会生成__VIEWSTATE隐藏域,服务端就可以根据_VIEWSTATE隐藏域设值,如果有__VIEWSTATE隐藏域,则IsPostBack就是true,否则就是false.
2、__VIEWSTATE隐藏域作用
2.1 储存服务端控件的值
2.3 去掉__VIEWSTATE方法:EnableViewState="false"//去掉后,__VIEWSTATE隐藏域中只存放控件的状态码。
2.4 ViewState可以保存用户数据:先将数据序列化,再进行base64编码,最后存放到表单的__VIEWSTATE隐藏域中,这时候 __VIEWSTATE隐藏域中就保存两部分的数据,一部分是控件的状态码,一部分就是用户储存的数据。
ViewState["mid"]=2;//注:一个对象也可以保存到ViewState中,但是必须指定它允许序列化。