讲解在ASP.NET中如何设置母版页
2012-06-22 09:11
323 查看
在许多情况下,我们需要根据项目的运行情况,在页面运行时才决定使用哪个母版页。例如在企业管理系统中,我们要求公司的某个部门需要使用一个母版页,而其他部门则使用另外一个母版页。显然,这时候前面母版页调用方式是不能够满足的,它要求我们必须以编程方式来动态设置母版页。
其实,通过编程方式来动态设置母版页非常方便。你只需设置Page.MasterPageFile属性就可以了。但这一步必须在Page.Init事件阶段完成,在这之后,再设置这一属性会产生一个异常。如下面的代码所示:
protected void Page_PreInit(object sender, EventArgs e)
{
Page.MasterPageFile = "~/Test.Master";
}
如果你将Page.MasterPageFile属性设置在Page_Load事件里,页面将会提示错误信息:"The 'MasterPageFile' property can only be set in or before the 'Page_PreInit' event.".因此,你必须将Page.MasterPageFile属性设置在Page.Init事件里。
在使用以编程方式来动态设置母版页时,还必须注意如下几点:
1)确保在Web.config文件中或者内容页面的@Page指令中没有引用MasterPageFile的<pages>元素,只有这样才会得到成功加载的页面,并且引入了母版页。
2)确保内容页面没有使用MasterType指令来创建对母版页的强类型引用。
3)确保内容页面和所设置的的母版页完全兼容。
其实,通过编程方式来动态设置母版页非常方便。你只需设置Page.MasterPageFile属性就可以了。但这一步必须在Page.Init事件阶段完成,在这之后,再设置这一属性会产生一个异常。如下面的代码所示:
protected void Page_PreInit(object sender, EventArgs e)
{
Page.MasterPageFile = "~/Test.Master";
}
如果你将Page.MasterPageFile属性设置在Page_Load事件里,页面将会提示错误信息:"The 'MasterPageFile' property can only be set in or before the 'Page_PreInit' event.".因此,你必须将Page.MasterPageFile属性设置在Page.Init事件里。
在使用以编程方式来动态设置母版页时,还必须注意如下几点:
1)确保在Web.config文件中或者内容页面的@Page指令中没有引用MasterPageFile的<pages>元素,只有这样才会得到成功加载的页面,并且引入了母版页。
2)确保内容页面没有使用MasterType指令来创建对母版页的强类型引用。
3)确保内容页面和所设置的的母版页完全兼容。
相关文章推荐
- 讲解在asp.net中如何对回车自动登陆设置
- asp.net: 应用母版页的页面,如何设置其标题?
- 在ASP.NET中以编程方式设置母版页
- asp.net页如何获取母版页控件
- 如何设置ASP.NET页面的运行超时时间
- asp.net如何设置数据库连接池的数量
- 如何准确、通俗的讲解ASP.NET中多层开发架
- Asp.Net Core 如何在 IIS 中设置环境变量
- ORM,ASP.NET中ORM学习,ASP.NET中ORM学习心得,WEB2.0中ORM实现原理,Asp.net简单ORM示例源码详细讲解,Asp.net2.0:如何使用ObjectDataSource(配合ORM )
- 如何设置ASP.NET网页的可缓存性
- 如何设置使 IIS 应用程序池使用 ASP.Net 3.5 而不是 2.0
- 转在ASP.NET中以编程方式设置母版页
- ORM,ASP.NET中ORM学习,ASP.NET中ORM学习心得,WEB2.0中ORM实现原理,Asp.net简单ORM示例源码详细讲解,Asp.net2.0:如何使用ObjectDataSource(配合ORM )(二)
- asp.net母版页如何使用
- 讲解MySQL数据库与ASP.NET如何强强联手
- asp.net中如何动态修改母版页的title
- [ASP.NET 2.0 Security FAQs]如何设置SQL Server或SQL Express数据库,使其支持Membership、Profiles和Role
- 如何:在 ASP.NET 网页中设置控件的 HTML 属性
- 讲解ASP.NET中如何防范SQL注入式攻击
- asp.net如何设置数据库连接池的数量