ASP.Net从自定义类访问Masterpage属性

时间:2012-02-02 12:38:03

标签: asp.net class master-pages

一个微不足道的问题,但我有其中一个时刻......

我在网站解决方案中有一个母版页(我们称之为M)。现在我希望我的所有内容页面都来自一个自定义类(称为B,后者继承自Page)。

现在的问题是,我希望B能够访问M(母版页)的属性和方法。在单个内容页面中这样做很好(因为方法和属性在母版页中声明为公共):

M mPage = (M)Page.Master;

但是在B中这样做会失败。我也在其MasterPageFile方法中设置了B的PreInit属性,因此其主页设置正确。据我所知,由于这是一个网站解决方案,而不是一个Web应用程序,我试图在编译时访问不运行的运行时材料。

1 个答案:

答案 0 :(得分:0)

答案是创建一个界面:

public interface IMyMasterPage { }

让你的母版页实现这个界面,然后你可以这样做:

IMyMasterPage mPage = (IMyMasterPage)Page.Master;