母版页和布局页

  母版页存在于Asp.Net Web窗体应用程序中,而在MVC应用程序中存在试图布局页。

母版页存在就一定要有内容页的存在,否则母版页的存在就没有了意义。

母版页提供整个框架,并利用

       <asp:ContentPlaceHolder ID="ContentPlaceHolder1"runat="server">
       
        </asp:ContentPlaceHolder>

为内容留出空隙。

 

创建使用母版页的内容视图,

 

内容页会自动生成,带有内容容器标签的id 和内容id相组合,使得,内容填写到相应的内容容器中去。

<asp:Content ID="Content1"ContentPlaceHolderID="head" runat="server">
</asp:Content>
<asp:Content ID="Content2"ContentPlaceHolderID="ContentPlaceHolder1"runat="server">
</asp:Content>

MVC中的布局页中使用@RenderBody代替ContentPlaceHolder1

  1. 布局页是MVC应用程序中最先启动的文件,虽然我们在Global.asax中定义了最先启动的页面

        

publicstatic void RegisterRoutes(RouteCollection routes)
        {
           routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
 
           routes.MapRoute(
               "Default", // 路由名称
               "{controller}/{action}/{id}", // 带有参数的 URL
               new { controller = "Home", action = "Index", id =UrlParameter.Optional } // 参数默认值
            );
 
        }

但这只是布局页中 @RenderBody()所指向的位置

  1. 那么最先启动的布局页在什么位置定义呢?
    1. Views文件夹下的_ViewStart.cshtml文件中定义。

@{
    Layout ="~/Views/Shared/EasyUILayout.cshtml";
}

  1. 当布局页中的代码运行到 @RenderBody(),会自动显示Global.asax定义的起始页中的内容。
  2. 布局页中还可以使用

           <div id="logindisplay">
               @Html.Partial("_LogOnPartial")
           </div>

添加另一个布局页中的内容。

  1. 布局页中显示内容的方式还有其他几种,详见博客:http://www.cnblogs.com/luluping/archive/2011/04/20/2021916.html

 

      之前学了自定义控件,之后又学了母版页,现在又学了布局页,呵呵,有了一种永远也赶不上时尚的感觉。之后还有什么我需要学习的呢,呵呵,尽管来吧,我要抓住时尚,并引领时尚。

评论 17
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值