3

我有一个BasePagewhich 继承自System.Web.UI.Page,并且每个继承 的页面都BasePage将具有相同的母版页。

如何将Page.MasterBasePage转换为特定母版页,以便可以访问其上的属性?

4

3 回答 3

9

更好的方法是将 MasterType 属性添加到使用该母版的页面。然后,您可以通过页面对象简单地访问母版页属性。

<%@ MasterType VirtualPath="~/site.master" %>

您只需在代码中使用它:

this.Master.propertyName

访问当前页面的母版页属性。

于 2008-10-13T21:39:30.513 回答
3

无法完成覆盖的 Master(它不是 Virtual),并且用 new 掩盖它会导致页面类无法获取其 master 的问题,因此最好的办法是第二个属性。

就像是:

public CustomMasterPage MasterPage
{
    get { return this.Master as CustomMasterPage; }
}

在您的 BasePage 类中。

于 2008-10-13T21:38:20.857 回答
0

在 VB.Net

MasterPageVariable = Ctype(page.MasterPage, MasterPageClass)
于 2008-10-13T21:36:01.907 回答