【问题标题】:Can I know what page is in my master page's ContentPlaceHolder?我可以知道我的母版页的 ContentPlaceHolder 中有什么页面吗?
【发布时间】:2010-09-08 18:26:22
【问题描述】:

我遇到的所有 Google 发现都告诉我如何使用 FindControl 从内容页面本身访问母版上的控件。

但是,我想做的恰恰相反。 在母版页中,我想引用 ContentPlaceHolder 中的任何子页面。

你为什么问。 我希望母版页根据占位符中当前的内容页面知道哪个选项卡应该处于活动状态。 这让我避免让每个页面都引用母版页并允许他们更改活动选项卡;这应该是母版页的工作(如果有办法知道它包含了谁)。

谢谢。请勿吐槽。

【问题讨论】:

    标签: c# asp.net contentplaceholder master-pages


    【解决方案1】:

    如果您正在寻找正在执行的页面类的实例,您可以从当前 HTTP 上下文中检索它:

    var page = HttpContext.Current.CurrentHandler as Page;
    

    从那里,您可以浏览页面的控制树,调用FindControl(),等等。但是,请注意页面生命周期,因为母版页事件往往会在其对应的页面事件之前触发。

    【讨论】:

    • 完美的答案正是我所需要的!
    猜你喜欢
    • 2013-10-01
    • 1970-01-01
    • 2011-10-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多