主页面没有LoadComplete?

时间:2011-03-01 09:45:45

标签: asp.net

AutoEventWireUp设置为false,我通常会设置Page_Finalize,如下所示:

Include(Self.LoadComplete, Self.Page_Finalize); //Delphi
然而,

LoadComplete似乎在MasterPage上不可用,我的Page_Finalize显然没有被调用。

我打算如何在母版页中释放对象?

感谢。

2 个答案:

答案 0 :(得分:5)

LoadComplete方法只是不是 MasterPage的成员,而是Page的成员。

这有几个原因,包括页面生命周期的 orchestrator 本身为Page类。

它有三种与事件相关的方法:PreLoadLoadLoadComplete。在Load期间,会触发子控件的Load事件。

当母版页包含(通过 layout )页面内容时,页面包含MasterPage对象,因为PageIHttpHandler响应ASP.NET中的HTTP请求。

简单地说,你不能覆盖(我不知道Delphi,是某种覆盖?)OnLoadComplete MasterPage因为它没有定义。仅OnLoad

答案 1 :(得分:1)

有点晚了,但是从主页面向Page.LoadComplete事件添加方法似乎有效。

在母版页中:

protected void Page_Load(object sender, EventArgs e) {
    Page.LoadComplete += Page_LoadComplete;
}

protected void Page_LoadComplete(object sender, EventArgs e) {
    // do stuff on LoadComplete in the master page
}