• asp.net的Master-Content结构简介


      在一个网站中,页面应该具有统一的布局方式,这些统一的布局内同将显示到所有的页面中,它提供了用户最基本的功能。Asp.Net2.0通过Master-Content结构提供了这样统一页面管理的机制。

      Master页面:其提供了所有最基本的基于该页面显示的布局和功能,它是页面的最高控制。Master页面中包含了<asp:contentPlaceHolder runat="server"></asp:contentPlaceHolder>控件,此控件的主要作用就是在Master页面中提供占位符,这些控件所在的区域是需要通过Content页面重新定义的。在整个项目进行运行时,Mater页面是无法被加载的。

      Content页面:所有的Content页面都是以Master页面为基础的,这些页面在创建时需要表明所使用的Master页面是哪个,创建成功后页面中会自动添加<asp:Content ContentPlaceHolderID="ContentPlaceHolder1" runat="server"></asp:Content>控件,此控件所对应的是Master页面中<asp:contentPlaceHolder>控件所在的区域。控件的ContentPlaceHolderID属性所对应的控件ID为<asp:contentPlaceHoder>控件的ID值。项目运行时运行Content页面会自动加载Master页面的内容。

      理论完毕,接下来上代码。(代码就是个小例子,用以说明,具体项目具体去写)

      初始时添加新建项-》母版页。在母版页中重新起好名字,我的为Main.Master。

     1 <%@ Master Language="C#" AutoEventWireup="true" CodeBehind="Main.master.cs" Inherits="masterContentWeb.Main" %>
     2 
     3 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
     4 
     5 <html xmlns="http://www.w3.org/1999/xhtml">
     6 <head runat="server">
     7     <title></title>
     8     <asp:ContentPlaceHolder ID="head" runat="server">
     9     </asp:ContentPlaceHolder>
    10 </head>
    11 <body>
    12     <form id="form1" runat="server">
    13     <div>
    14         <table>
    15             <tr>
    16                 <td style=" 800px;" colspan="2" ><img src="image/haha.PNG" alt="" /></td>
    17             </tr>
    18             <tr style="height:600px;">
    19                 <td style=" 300px;">
    20                     班级管理<br />
    21                     学生管理<br />
    22                     选课管理<br />
    23                 </td>
    24                 <td>
    25                     <asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server">
    26         
    27                     </asp:ContentPlaceHolder>
    28                 </td>
    29             </tr>
    30         </table>        
    31     </div>
    32     </form>
    33 </body>
    34 </html>

      Master页面完毕以后新建Content页面,新建项-》使用母版页的Web窗体,同样,改名称,我的为WebPage1.aspx,注意:勾选使用母版页

    1 <%@ Page Title="" Language="C#" MasterPageFile="~/Main.Master" AutoEventWireup="true" CodeBehind="WebPage1.aspx.cs" Inherits="masterContentWeb.WebPage1" %>
    2 <asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
    3 </asp:Content>
    4 <asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
    5 班级列表
    6 </asp:Content>

      两个页面都写好以后,便可运行项目,然后就会看到如下的效果图:

      可以看到将整个页面分成了三部分,其中头部和几个管理是Master页面中定义的,而学生列表是Content页面中定义,并且Content部分是可以修改的。

  • 相关阅读:
    Docker理解
    提高服务器并发量,有关系统配置的常规方法
    Linux EXT 文件系统 详解
    jvm入门
    2020-1-08.运维面试题总结
    hexo+gitee
    rsync
    haddop3.2.1完全分布式安装
    zabbix02
    zabbix监控工具问题集
  • 原文地址:https://www.cnblogs.com/WuNaiHuaLuo/p/4509774.html
Copyright © 2020-2023  润新知