【问题标题】:Is it possible to set MasterType programmatically?是否可以通过编程方式设置 MasterType?
【发布时间】:2010-02-12 01:00:28
【问题描述】:
页面可以具有属性MasterType 以使Page.Master 成为强类型:
<%@ MasterType VirtualPath="~/Site.master" %>
如果我的所有页面都继承了特定的类继承 System.Web.UI.Page 本身,我是否可以访问其中的 this.Master 属性,以便调用母版页的方法?
【问题讨论】:
标签:
c#
asp.net
.net
master-pages
【解决方案1】:
在所有页面继承自的基类中,只需覆盖 Master 属性,如下所示:
public new SiteMaster Master
{
get { return base.Master as SiteMaster ; }
}
或 abatishchev 自己的变体:
public new ISiteMaster Master
{
get { return base.Master as ISiteMaster; }
}