我爱Aspx >> Asp.Net >> ASP.NET 页面对象模型象LoadPageStateFormPersistenceMedium这样的方法和与其相对应的SavePageStateToPersistenceMedium方法可以用来加载或者保存视图状态到其他的存储中介里,例如:会话、数据库或者是服务器上的文件。和LoadViewState方法不相同的是,上面提到的方法只能在Page的继承类里使用。
一旦视图状态加载完毕了,页面里的控件被赋予了和上一次发送到浏览器时一样的状态。下一个阶段是将他们更新,使之与服务器端发生的变化相一致。在回传数据处理阶段,控件更新他们的状态,使之和客户端的HTML元素的状态相一致。例如,服务器控件TextBox有和它相对应的HTML控件<input type=text>。在回传数据阶段,TextBox控件将得到<input>标签的值,并且用他来更新他的内部状态。每一个控件都可以从回传数据中取得自己数据的能力,并且把自己的状态更新。TextBox控件将更新它的Text属性,同样的,CheckBox控件也会将他们的Checked属性刷新。服务器控件和HTML元素的匹配是通过两者的ID来进行的。
在回传数据处理的最后阶段,所有的页面控件反映了上一个被更新的状态,这些都是由于客户端的输入变化所引起的。接下来,Load事件将被页面执行。
有一些控件,在两次请求中如果某些敏感属性发生了变化,他们需要对此作出响应,并且完成一定的任务。例如,如果客户端的textbox控件的文本发生变化,这个控件就激发了TextChanged事件。根据自客户端的数据,如果控件的一个或多个属性发生了变化,每一个控件都可以精确的激发合适的事件来处理。这些控件实现了IPostBackDataHandler接口,这个接口中的LoadPostData方法在Load事件之后就被执行了。通过重定义LoadPostData方法,控件可以验证两次请求中发生的变化并且激起相关的事件处理程序。
在一个页面周期中的关键事件是那些由客户端事件激发在服务器执行一段代码的事件。例如,当用户点击一个按钮,页面就需要回传。这个事件的处理是从按钮ID和值的收集开始的。如果控件是实现了IPostBackEventHandler接口(Button和LinkButton就是这样的情况),页面构架将调用RaisePostBackEvent方法。这个方法的具体情况是取决于控件的类型的。在上面提到的Button和LinkButton控件,这个方法就将寻找Click事件处理程序。
Ҷƪл˵?
ADO.NET中的多数据表操作之读取[05-20]
ASP.NET里的事务处理[05-20]
ASP.NET中使用Caching[05-20]
通过ASP.NET远程杀死进程[05-20]
Asp.net中DataGrid控件的自定义分..[05-20]
使用ASP.NET中调用WebService时不..[05-20]
利用ASP.NET实现域名查询[05-20]
用ASP的方法动态写出JavaScript的..[05-20]
ASP通用分页类[05-20]
用Asp.net实现简单的文字水印[05-20]
ADO.NET中的多数据表操作之读取[05-20]
ASP.NET里的事务处理[05-20]
ASP.NET中使用Caching[05-20]
一个文件上传的类[05-20]
继承System.Web.UI.Page的页面基..[05-20]
静态方法和静态构造方法[05-20]
高效的Esmtp,带验证,用Socket编..[05-20]
用C#与XML创建动态分层菜单[05-20]
透明FLASH[05-20]
JS类:实现对联式广告[05-20]