是否可以通过编程方式设置 MasterType?

发布于 2024-08-21 04:16:14 字数 275 浏览 4 评论 0原文

页面可以有一个属性 MasterType 来使 Page.Master 成为强类型:

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

如果我的所有页面都继承特定的类,则继承 System.Web.UI.Page 本身,我可以通过某种方式访问​​其中的 this.Master 属性,以便调用母版页的方法吗?

A page could have an attribute MasterType to make Page.Master to be strong-typed:

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

If all my pages inherits specific class inherited System.Web.UI.Page itself, can I someway get access to this.Master property in it so I could call master page's methods?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

戴着白色围巾的女孩 2024-08-28 04:16:14

在所有页面继承的基类中,只需覆盖 Master 属性,如下所示:

public new SiteMaster Master
{
  get { return base.Master as SiteMaster ; }
}

或 abatishchev 自己的变体:

public new ISiteMaster Master
{
  get { return base.Master as ISiteMaster; }
}

In your base class that all pages inherit from, just override the Master property, something like this:

public new SiteMaster Master
{
  get { return base.Master as SiteMaster ; }
}

or abatishchev's own variant:

public new ISiteMaster Master
{
  get { return base.Master as ISiteMaster; }
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文