C# 您能在“之后/之前”指定母版页吗;第页“预初始化”;?
我想动态设置母版页,但目前我有一个带有C# 您能在“之后/之前”指定母版页吗;第页“预初始化”;?,c#,asp.net,webforms,C#,Asp.net,Webforms,我想动态设置母版页,但目前我有一个带有page\u PreInit的基本页,用于初始化/执行memberpages所需的各种任务 现在我知道您可以通过在成员页面中放置(新的受保护的void page_OnInit(..)来覆盖基本页面,但我不想像前面所说的那样,基本页面已经完成了它的工作 "this.MasterPageFile =" 有没有办法在页面\u PreInit之后或之前设置母版页? 还是同时使用页面预处理和基本页面预处理 谢谢编辑:重新阅读您的问题,我看到您的问题: 原始答案
page\u PreInit
的基本页,用于初始化/执行memberpages所需的各种任务
现在我知道您可以通过在成员页面中放置(新的受保护的void page_OnInit(..)
来覆盖基本页面,但我不想像前面所说的那样,基本页面已经完成了它的工作
"this.MasterPageFile ="
有没有办法在页面\u PreInit
之后或之前设置母版页?还是同时使用页面预处理和基本页面预处理 谢谢编辑:重新阅读您的问题,我看到您的问题:
原始答案 根据MSDN,您可以在
Page\u PreInit
期间分配它
在Page\u PreInit
之前或之后执行此操作是否有原因?我不完全确定在页面生命周期中,在pre-init之前有什么有用的东西
(来源:)
如果可以的话,除了页面构造函数之外,没有更早的钩子。但是您还不能访问任何页面值。我在所有页面的基本页面中都使用了preInt,我只需要提前将母版页分配给这一页。。那么有可能在preInt之后再做吗?现在将尝试您的最新编辑,会让您知道它是否有效:)老实说,我实际上在代码中使用了相同的方法,它对我来说很好(尽管我使用的是OnLoad而不是Page_PreInit)
public class BasePage : WebPage {
protected void Page_PreInit(object sender, EventArgs e){
//do stuff here
}
}
public class MyPage : BasePage {
protected void Page_PreInit(object sender, EventArgs e){
//overwrites base class functionality
//Pretty sure you can:
base.Page_PreInit(sender,e);
}
}