我的某个项目需要在运行时更改母版页。
我的意思是我需要应用检查,并且在该检查的基础上,可以将特定母版页调用到我的原生aspx页面。
请帮助我。
提前致谢:)
答案 0 :(得分:2)
例如:
void Page_PreInit(Object sender, EventArgs e)
{
this.MasterPageFile = "~/NewMaster.master";
}
根据需要应用您的条件。来自here。
答案 1 :(得分:1)
是。仅在PreInit页面事件期间(即在运行时开始处理请求之前)设置MasterPageFile属性(因为具有母版页的页面的呈现发生在Init事件之前)
protected void Page_PreInit(object sender, EventArgs e)
{
MasterPageFile = "simple2.master";
}
如果尝试在Init或Load事件处理程序中设置MasterPageFile属性,则会引发异常。
是的,有可能,实施如下
答案 2 :(得分:0)
为了实现这一点,我们需要在页面获取渲染之前在Page_PreInit中编写代码。
将以下代码放入您的代码中:
if (Session["userType"] == "Admin") //check the user type
this.Page.MasterPageFile = "~/Admin.master";
else
this.Page.MasterPageFile = "~/User.master";
希望这有帮助。