1

我的项目文件中有以下文件。

  1. 用户控制
  2. 内容页
  3. 站长

我正在检查页面生命周期中的Render事件。Render事件正在按以下顺序执行。

  1. 内容页
  2. 母版页
  3. 用户控制

显然,它是预定义的。

问题是,为什么是内容页,然后是母版页,最后是用户控制?

我的意思是如何合并完整的 Html 以发送到浏览器?它不应该首先包含母版页吗?

4

1 回答 1

2

渲染不是一个事件。它是一种调用方法来生成要发送给客户端的输出。
渲染渲染它自己和它的孩子。

顺序为 Render RenderChildren

从ASP.NET 页面生命周期中可以清楚地看到。

在您的控件层次结构中,页面是父级。MasterPage 是 Page 控件的子控件。根据您放置用户控件的位置,它将是 Page 或 MasterPage 的子级。

如果创建自定义控件,通常会覆盖此方法以输出控件的标记

每个控件HtmlTextWriter从其父控件接收 a 并将其输出写入此编写器。客户端收到的最终输出是控件写入的输出及其所有子级写入器。

由于页面必须启动此过程,因此必须首先调用其 Render。

于 2012-12-24T11:20:45.527 回答