如何从Page.Master转换为ASP.NET中的特定母版页

时间:2008-10-13 21:34:05

标签: asp.net-2.0

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

如何将Page.Master的{​​{1}}转换为特定的母版页,以便我可以访问其中的属性?

3 个答案:

答案 0 :(得分:8)

更好的方法是将MasterType属性添加到使用该主服务器的页面。然后,您只需通过页面对象访问母版页属性即可。

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

您只需在代码中使用它:

this.Master.propertyName

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

答案 1 :(得分:3)

Overriden Master无法完成(它不是虚拟的),并且用新的屏蔽它会导致页面类无法获得其主页的问题,所以最好的办法是第二个属性。

类似的东西:

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

在您的BasePage类中。

答案 2 :(得分:0)

在VB.Net

MasterPageVariable = Ctype(page.MasterPage, MasterPageClass)