网站大量收购独家精品文档,联系QQ:2885784924

.NETpage_load与page_init的区别.docVIP

  1. 1、本文档共3页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
.NETpage_load与page_init的区别

page_load?与page_init?的区别(2009-04-29 16:40:24) it? 分类:c# 默认新建一个页面,就会有一个Page_Load事件的默认代码,而Page_Init却是另一个对页面作用非常重要的事件。 下面分别说明: Page_Init:是在页面未加载之前,也就是在页面初始化之前,在Page_Load之前调用的,可以在控件加载之前做一些客户端检测呀这些操作等。但这个事件对于当前用户来说,只会进行一次,也就是第一次访问这个页面的时候,其运行一次。 Page_Load:在Page_Init之后运行(废话),用于加载控制以及页面的其它内容。客户端每刷新或是提交一次,Page_Load事件就重新绘制页面,将当前页面当新页面来处理。 区别说清楚了,再来说一下这点区别的利用。 我想到的是,可以利用这一点来做页面点击或是访问次数的更加精确一点的计数。 比如说,在Page_Init里运行计数的代码,这样这个页面被同一个用户不停的刷或是操作的时候,其点击始终是1次,这样计数就比较科学一些。当然,不能防止去了别的页面再回来的情况了。 还有比如我以前网站的访问统计,记录IP访问以及网站总的页面访问次数,都可以利用。 一个ASP.NET页面在运行时将经历一个生命周期,在生命周期中将执行一系列处理步骤。这些步骤包括初始化、实例化控件、还原和维护状态、运行事件处理程序代码以及呈现页面。在页生命周期的每个阶段中将引发一些事件,事件被引发时会运行程序员提供的事件处理代码。页面还支持自动事件连接,即ASP.NET将寻找具有特定名称的方法,并在引发特定事件时自动运行这些方法。如果@Page指令的AutoEventWireup属性设置为 true(若未定义该属性则默认为 true),页面事件将自动绑定至使用“Page_event”命名约定的方法,如 Page_Load 和 Page_Init。下表列出了主要的页面生命周期事件。 ? 页 事 件 典 型 用 场 Page_PreInit 使用IsPostBack属性确定是否是第一次处理该页;创建动态控件;动态设置Theme属性;读取或设置配置文件属性值等 Page_Init 读取或初始化控件属性 Page_Preload 事件在所有回发数据处理之后但在 Load 事件之前引发 Page_Load 读取和更新控件属性 Control events 处理特定事件,如 Button 控件的 Click 事件 Page_PreRender 对页的内容进行最后更改 Page_Unload 执行最后的清理工作,例如关闭打开的文件和数据库连接等 protected void Page_Load(object sender, EventArgs e) { lbText.Text += Page_Load hr ; } protected void Page_PreInit(object sender, EventArgs e) { lbText.Text +=? Page_PreInit hr; } protected void Page_Init(object sender, EventArgs e) { lbText.Text += Page_Init hr; } protected void Page_PreLoad(object sender, EventArgs e) { lbText.Text += Page_PreLoad hr; } protected void Page_PreRender(object sender, EventArgs e) { lbText.Text += Page_PreRender hr; } lbText是在页面顶端放置的一个Lable控件。运行后在浏览器中呈现如图6-1所示的效果。 需要特别说明的是Page_Unload事件,它容易被误解为关闭页面时所触发的事件。但是执行下面的代码后就会发现其实不然。 代码清单 6 2 protected void Page_Unload(object sender, EventArgs e) { System.Web.HttpContext.Current.Response.Write (Scriptalert(Page_Unload);/Script); } 保存并运行页面后就会发现,在页面加载后就看到了图6-2的效果。 498)this.style.width=498; border=0? 图 6-1? 498)this.style.width=498; border=0? 图 6-2

文档评论(0)

yaobanwd + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档