MonoRailMVC应用-母板页的Title
2008-12-22 10:59
295 查看
母板页是具体设计网站首先要面对的问题。MonoRail默认在Views/layouts目录中。因为我配置过目录,所以我的目录是在wap3/layouts下。接下来我沿用ASP.NET对母板页的一些说法来表述,方便大家更快的理解和使用
内容页中设置母板页的Title、Metal信息
因为MonoRail的layouts是没有后代码的(重点说明),那么有些需要在母板页处理的逻辑怎么使用呢?其实很简单只要在母板页上定义一个变量,内容页进行赋值即可
母板页添加如下代码:
内容页CS代码进行赋值
这样就完成了在内容页中修改母板页内容的过程。
母板页的默认值
但这样你会发现一个,就是每一个调用母板页的地方都必须去设置这个headtitle,否则他直接输出$headtitle。显然需要一个默认值。每一个页面去设置默认值,加重了开发的负担。这样我就定义了一个BaseController类
public class BaseController : Controller
{
public BaseController()
{
PropertyBag["HeadTitle"] = String.Empty;
}
}
让所有的内容页后代码都从BaseController继承,这样就解决的默认值的问题
空默认值更简单
你如果认为新定义一个基类比较麻烦,而你的值默认是为空的,那么这样使用更加方便。如果没有赋值,在内容页中将不显示
但如果你需要一些定制化的默认值,这样就比较麻烦了。所以我还是建议都从BaseController继承。
内容页中设置母板页的Title、Metal信息
因为MonoRail的layouts是没有后代码的(重点说明),那么有些需要在母板页处理的逻辑怎么使用呢?其实很简单只要在母板页上定义一个变量,内容页进行赋值即可
母板页添加如下代码:
<title>$headtitle </title>
内容页CS代码进行赋值
public void Index() { PropertyBag["HeadTitle"] = "首页数据"; }
这样就完成了在内容页中修改母板页内容的过程。
母板页的默认值
但这样你会发现一个,就是每一个调用母板页的地方都必须去设置这个headtitle,否则他直接输出$headtitle。显然需要一个默认值。每一个页面去设置默认值,加重了开发的负担。这样我就定义了一个BaseController类
public class BaseController : Controller
{
public BaseController()
{
PropertyBag["HeadTitle"] = String.Empty;
}
}
让所有的内容页后代码都从BaseController继承,这样就解决的默认值的问题
空默认值更简单
你如果认为新定义一个基类比较麻烦,而你的值默认是为空的,那么这样使用更加方便。如果没有赋值,在内容页中将不显示
<title>$!headtitle </title>
但如果你需要一些定制化的默认值,这样就比较麻烦了。所以我还是建议都从BaseController继承。
相关文章推荐
- JS动态修改单网页web应用在微信浏览器中的title
- 自定义Activity标题栏(Title bar)和窗体显示状态操作(requestWindowFeature()的应用)
- 自定义Activity标题栏(Title bar)和窗体显示状态操作(requestWindowFeature()的应用)
- 生活中的Title应用
- 今天记录一下小小的知识点--如何让你的Android应用没有标题 --- requestWindowFeature(Window.FEATURE_NO_TITLE);
- 马宁关于Mango应用的Title的文章
- android应用去掉title bar 及全屏处理方法
- BoxOver.js 漂亮的Title效果 ,应用时效果失效解决办法
- ASP.NET后台动态修改母板页的Title,keywords,description属性
- HTML 中 <title> 属性的应用
- UWP 应用中的Back button(TitleBar) 的处理
- struts2.0 title插件的应用
- android应用去掉title bar
- Win10开发:玩转应用窗体和应用标题栏TitleBar
- 项目中添加 android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen"应用崩溃
- 如何使Layouts里的页面应用站点母板页
- 设置应用无titlebar但开启时titlebar仍会一闪而过
- 自定义Activity标题栏(Title bar)和窗体显示状态操作(requestWindowFeature()的应用) 推荐
- VS 2005 母板页应用
- android 去掉app title使应用全屏