ASP.net中模板的简单使用

1.新建一个站点,右键站点,添加一个新项,选择

命名为:MasterPage.master

2.修改原先的代码,秩序在body标签中添加一个表格,表格中添加四个内容占位符。

<!--模板页声明标记,大概可以理解成看到这个就是模板页-->
<%@ Master Language="C#" AutoEventWireup="true" CodeFile="MasterPage.master.cs" Inherits="MasterPage" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>无标题页</title>
</head>
<body>
    <form id="form1" runat="server">
        <table width="60%">
            <tr>
                <td colspan="3" style="height:80px">
                       <!--内容占位符,他的作用就是当你用<table>或者<div>进行布局后,用这个控件去“霸占”一个地方,而这个地方的主人,不是contentplaceholder,而是后面将提到的Content-->
                    <asp:ContentPlaceHolder ID="TopContent" runat="server">
                    </asp:ContentPlaceHolder>
                </td>
            </tr>
            <tr>
                <td style="width:30">
                    <asp:ContentPlaceHolder ID="LeftContent" runat="server">
                    </asp:ContentPlaceHolder>
                </td>
                <td>
                    <asp:ContentPlaceHolder ID="RightContent" runat="server">
                    </asp:ContentPlaceHolder>
                </td>
            </tr>
            <tr>
                <td colspan="3">
                    <asp:ContentPlaceHolder ID="FootContent" runat="server">
                    </asp:ContentPlaceHolder>

                </td>
            </tr>
        </table>

    </form>
</body>
</html>

3.创建一个新项, 命名为Default2.aspx,一定要打勾选择。

<!--引用模板-->
<%@ Page Language="C#" MasterPageFile="~/MasterPage.master" CodeFile="Default2.aspx.cs" Inherits="Default2" Title="Untitled Page" %>
<!--创建占用空间,ContentPlaceHolderID 与模板中的ContentPlaceHolder ID 对应-->
<asp:Content ID="Content1" ContentPlaceHolderID="TopContent" Runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="LeftContent" Runat="Server">
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="RightContent" Runat="Server">
</asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="FootContent" Runat="Server">
</asp:Content>

4.很明显,他和我们以往创建的aspx的页面很不一样,他没有HTML的相关声明,而且在页面的头部声明<%@ Page Language="C#" MasterPageFile="~/MasterPage.master" CodeFile="Default2.aspx.cs" Inherits="Default2" Title="Untitled Page" %>中,比普通的aspx页面多了MasterPageFile="~/MasterPage.master"。在刚才MasterPage.master中的设置,我们定义了四个ContentPlaceHolder,ID分别是TopContent,LeftContent,RightContent,FootContent,在Default2.aspx页面下的Content控件里,有一个属性就是ContentPlaceHolderID,该字段表明该Content控件中的内容代替ID指向的ContentPlaceHolder占位控件,这就是真的“霸主”了。这样一来,页面布局就使用MasterPage.master中的,而内容就使用Default2.aspx中Content控件下的,因此你在Default2.aspx 中找不到Html页面的基本格式标记,如<head>、<body>。
现在我们来看下Default2.aspx的设计界面,看起来和刚才我们创建的MasterPage.master很像,但是我们发现在Default2.aspx中,除了Content内部以外,其他地方都是不能编辑的。
设计好它以后可以统一每个页面的页眉,页脚.新建一个MasertPage后,再新建其他页面的时候只要选择好模板页,然后在contentplaceholder里写好你需要的东西.那么运行后就不仅有你写的东西有了,模板页的东西也会自己出现,可以减少很多重复工作




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值