本文通过实战的方法简单介绍ASP.NET中的事件执行顺序。
方法/步骤
新建C# WebForm项目,如下图:
在Defualt.aspx文件中添加一个Button控件并命名为Button1,然后为该控件各个事件添加事件处理程序,并添加断点,如下图:
打开Global.asax文件并添加断点,如下图:
打开Site.Master的代码文件Site.Master.cs,并添加断点,如下图:
按F5调试运行,查看代码运行顺序:Application_Start→Session_Start→Button1_Init→Page_Load(Defualt.asp)→Page_Load(Site.Master)→Button1_Load→Button1_PreRender→Button1_Unload→显示界面。
当我们关闭IIS时执行:Session_End→Application_End。
总结:
1、当通过IIS启动网站时执行Application_Start函数,当关闭网站时执行Application_End函数。这两个函数可以看作是IIS调用的。
2、当有新的连接请求到达时执行Session_Start函数,此时才可以使用Session对象,当用户长时间不操作,超过了Sesshtml" target="_blank">ion时长,执行Session_End函数。这两个函数也可以看作是IIS调用的。
3、当请求一个aspx页面时,首先会执行所有控件的Init函数,然后执行页面的Page_Load函数,若有母板再执行母板的Page_Load函数,然后执行控件的Load函数、PreRender函数、Unload函数,当所有服务器控件都执行了这些函数后才会显示相应的界面。
现在大家对ASP.NET中事件如何依次发生有了大概了解吧,希望对大家学习Asp.Net中的事件执行顺序有所帮助。
问题内容: 我试图让一个TextBox在每次击键时触发它的onTextChanged事件,而不是仅在失去焦点时才触发。我以为添加AsyncPostBackTrigger可以做到这一点,但仍然无法正常工作。我要做什么甚至有可能吗?代码如下: 问题答案: 使用javascript引发文本框控件时,您需要调用该函数。 但是,由于您的文本框位于更新面板中,因此,每当用户按下某个键时,该文本框都会重新呈现,
我在我的应用程序中使用MutableLiveData进行基于事件的通信。我有单一活动两个片段架构。 在ViewModel的帮助下,我正在使用Fragment-1中的LiveData事件。但是,当我使用菜单栏用Fragment-2替换这个Fragment-1并最终返回Fragment-1时,LiveData的旧值再次被捕获。 如何避免这个问题?非常感谢任何帮助/建议!谢谢你。
第一次调用时,激发一次 第二次调用时,会激发两次 等等 编辑: 下面是一个jsfiddle示例(如下所示)。 要复制,请单击按钮,然后单击,然后单击一个并重复此过程 您将注意到,第二次执行该过程时,文本会加倍
问题内容: 我有以下代码,但我的问题是该事件被触发了两次。我不知道是什么原因造成的。我怀疑是由供应商前缀引起的,但并非如此。即使我只离开,它仍然会开火两次。 CSS JS 问题答案: 对于您和,每个已转换的属性都会触发。 您可以在访问与事件关联的属性。 没有“ transition s end”事件,因此您可能需要一些技巧,例如仅过滤其中一个过渡属性的回调处理。例如: ps。没有浏览器会触发该事件
问题内容: 在如下代码段中: 在任务中,我要运行,完成后再运行,然后再执行其他操作。但我无法弄清楚。这件作品不起作用。请指教。 问题答案: 它不是一个正式版本,但是即将推出的Gulp 4.0使您可以轻松地使用gulp.series进行同步任务。您可以像这样简单地做到这一点:
问题内容: 我已使用将事件附加到文本框。它工作正常。当我想通过另一个函数以编程方式触发事件时,出现了我的问题。 我该怎么做? 问题答案: 您可以在IE 8或更低版本上使用fireEvent,在大多数。要创建您要触发的事件,可以使用或取决于浏览器。 这是一段不言自明的代码(来自原型),它在上触发事件: