ASP.NET 母版页 this、Master、Page 的关系

作者:vkvi 来源:ITPOW(原创) 日期:2020-5-16

this,就是当前对象,System.Web.UI.MasterPage。

Master,其类型也是 System.Web.UI.MasterPage,但是它表示母版的母版,如果这个母版不存在母版,那么它是 null 的。

Page,当前使用这个母版的页面,其类型为 System.Web.UI.Page。Page 属于 System.Web.UI.Control 这个类里面的一个属性。

由于 Master 与 Page 是嵌套的,所以如果我们在母版中这样:Page.Master.Page.Master,实际上等效于 this。

再看看 FindControl,Page.FindControl("") 是不是指母版中可以直接从 .aspx 页查找控件呢?

不是得,像这种嵌套,还是要先从母版找到 ContentPlaceHolder,再继续 FindControl,比如:FindControl("_contentPlaceHolder").FindControl("_grid")。请参见:用了母版后 FindControl 找不到控件的解决办法

相关文章