解决Asp.net MVC中页面标题的方法_.Net教程
教程Tag:暂无Tag,欢迎添加,赚取U币!
推荐:GridView列显示时间货币格式字符串效果图: 图1-未格式化前 图2-格式化后 解决方法: 在asp.net2.0中,如果要在绑定列中显示比如日期格式等,如果用下面的方法是显示不了的 asp:BoundFieldDataField=CreationDate DataFormatString={0:M-dd-yyyy} HeaderText=CreationDate/ 主要是由于ht
在Asp.net MVC 1.0正式版中的模板页中提供了:<asp:ContentPlaceHolder ID="TitleContent" runat="server" />这样可以让你在每个View中独立设定页面标题(Title),不过这样的弊端就是假如我的页面标题是如下形式:统一标题 - 副标题
那么要在每个View中都写上:日记页面:
<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server">
CaraQ - 日记
</asp:Content>
相册页面:
<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server">
CaraQ - 相册
</asp:Content>
……
假如有一天我要把其中的统一标题改一下那就得一个页面一个页面的去改,太过麻烦,而且这种命名标题的方法我认为也有背MVC的精神--让控制器决定视图显示的内容
其实有更简单的实现方法,如下:
首先定义每个Controller的父类如下:
Code
public class BaseController : Controller
{
private readonly string _titleFormat = "CaraQ - {0}";
private string _title;
protected string Title
{
get { return _title; }
set { _title = value; }
}
protected override void OnActionExecuted(ActionExecutedContext filterContext)
{
ViewData["Title"] = string.Format(_titleFormat, Title);
base.OnActionExecuted(filterContext);
}
}
让所有的Controller继承这个父类,设置页面标题的方法只需要在Action中使用如下方式即可:
public class BlogController : BaseController
{
public ActionResult Index()
{
this.Title = "日记";
}
}
最后在模板页中把TitleContent占位控件换成:
<%=ViewData["Title"] %>
这样就可以了,看到这样给页面命名标题是不是就简单多了,在View中了不会有那个像
<asp:Content ID="titleContent" ContentPlaceHolderID="TitleContent" runat="server"></asp:Content> 的控件了,要修改统一标题时只需要修改BaseController中的_titleFormat字串就可以了
分享:C# javascript 读写Cookie// C# 写读Cookie 第一:写Cookies Response.Cookies[UserName].Value=Guest; Response.Cookies[UserName].Expires=DateTime.Now.AddDays(1); 第二:添加Cookies HttpCookieuserName_zhengshu_Cookie=newHttpCookie(uname); userName_zhengshu_Cookie
相关.Net教程:
- asp.net如何得到GRIDVIEW中某行某列值的方法
- .net SMTP发送Email实例(可带附件)
- js实现广告漂浮效果的小例子
- asp.net Repeater 数据绑定的具体实现
- Asp.Net 无刷新文件上传并显示进度条的实现方法及思路
- Asp.net获取客户端IP常见代码存在的伪造IP问题探讨
- VS2010 水晶报表的使用方法
- ASP.NET中操作SQL数据库(连接字符串的配置及获取)
- asp.net页面传值测试实例代码
- DataGridView - DataGridViewCheckBoxCell的使用介绍
- asp.net中javascript的引用(直接引入和间接引入)
- 三层+存储过程实现分页示例代码
- 相关链接:
- 教程说明:
.Net教程-解决Asp.net MVC中页面标题的方法。