AutoEventWireUp = true和PAge_Load Handles在Code后面添加。 Page_Load函数只调用一次

时间:2012-02-27 10:07:27

标签: asp.net

我无法理解AutoEventWireup。 我在标记页面中有以下代码

<%@ Page Language="vb" AutoEventWireup="true" CodeBehind="Default.aspx.vb"    Inherits="TestWebApp._Default" %>

并在代码隐藏文件中

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
    sTest = sTest & " IN Page load "
End Sub

当引用此属性时,将按照中所述调用此页面加载两次 http://www.c-sharpcorner.com/uploadfile/puranindia/what-is-the-autoeventwireup-attribute-in-Asp-Net/

但是page_load函数只调用一次。谁能帮我? 为什么?

1 个答案:

答案 0 :(得分:0)

您链接的文章说:

  

这个可以导致相同的事件代码被调用两次

我认为这有点误导,因为它并不意味着必须这样做。

如果你在标题中声明了事件处理程序,它将会是:

onload="Page_Load"

或已明确添加:

this.Load += new EventHandler(this.Page_Load);

因为手动订阅AutoEventWireup会被调用。

因此,如果您只将AutoEventWireup设置为true而未自行订阅该事件,则只会调用一次。