这似乎是一个非常重要的问题,但在实施我的计划时遇到了很多困难。
我的程序结构如下:
我有2个名为News.aspx和Contact.aspx的内容页面。这两个页面也包含用户控件。
我在.aspx页面和用户控件中都有PreInit
和Load
的代码包含Init
方法。
如果用户当前在contact.aspx页面,然后他点击链接按钮移动到News.aspx页面,那么触发这些事件的顺序是什么?
当我提出断点并检查时,它按顺序进行。
Contact.aspx PreInit
Contact.aspx Init
News.aspx PreInit
News.aspx Init
但即使有时候这种方式也可以。首先是News.aspx方法,然后是abc.aspx页面方法。
确切的订单是什么?除了使用java脚本之外,我在 onbeforeunload 中每次刷新页面都调用了web方法。在上面的场景中,方法调用如下:
Contact.aspx PreInit
Contact.aspx Init
Web Method () on Page Refresh
News.aspx PreInit
News.aspx Init
调用这些方法的正确顺序是什么?
答案 0 :(得分:1)
这是生命周期事件的顺序:
在初始化控件之前触发Page的PreInit事件,因此用户控件没有PreInit事件。请参阅http://msdn.microsoft.com/en-us/library/ms178472.aspx。