我的项目文件中有以下文件。
我正在检查Render
事件的页面生命周期。 Render
事件正按以下顺序执行。
显然,它是预定义的。
问题是,为什么内容页面然后是母版页,最后是用户控件?
我的意思是如何将完整的Html合并到发送到浏览器?它不应该首先包含母版页吗?
答案 0 :(得分:2)
渲染不是一个事件。这是一种调用生成输出以发送给客户端的方法 渲染呈现自己及其子。
订单是 给予 RenderChildren
在ASP.NET Page Life Cycle中可以清楚地看到。
在您的控件层次结构中,页面是父级。 MasterPage是Page控件的子级。根据您放置用户控件的位置,它将是Page或MasterPage的子级。
如果创建自定义控件,通常会覆盖此方法以输出控件的标记
每个控件从其父级接收HtmlTextWriter
并将其输出写入此编写器。客户端收到的最终输出是控件及其所有子节点写入的输出。
由于页面必须启动此过程,因此必须首先调用其Render。