第七章 网页布局技术
第七章 网页布局技术http://doc.guandang.net用户控件Web用户控件:用户控件是能够在其中放置 标记和 Web控件的容器。可以将用户控件作 为一个单元对待,为其定义属性和方法。 自定义控件:自定义控件是编写的一个类, 此类从 Control 或 WebControl 派生。
http://doc.guandang.net用户控件Web用户控件和自定义控件都是为了实现代码 的重用,使开发方便快捷,提高了开发效率。 创建Web用户控件要比创建自定义控件方便很 多,因为它可以重用现有的控件,易于创建。 而自定义控件是编译的代码,易于使用但较难 于创建,自定义控件必须使用代码来创建。
创建用户控件<%@ Control Language="C#" AutoEventWireup="true" CodeFile="UserLoginControl.ascx.cs" 类似于@Page指令 类似于 指令 Inherits="_Controls_UserLoginControl" %>
Control指令
public partial class _Controls_UserLoginControl : http://doc.guandang.neterControl { protected void Page_Load(object sender, EventArgs e) ... ... 也有Page_Load事件 也有 事件 }
后台代码
http://doc.guandang.net用户控件Web用户控件与 http://doc.guandang.net 网页有以下区别:(1) Web用户控件的文件扩展名为 .ascx。 (2) Web用户控件中没有 @ Page 指令,而是包含 @ Control 指令,该指令对配置及其他属性进行定义。 (3)Web用户控件不能作为独立文件运行,而必须像 处理基本控件一样,将它们添加到 http://doc.guandang.net 页中。 (4)Web用户控件中没有 HTML、body 或 form 元素。 这些元素必须位于宿主页中;
http://doc.guandang.net用户控件【例7-1】创建一个Web用户控件,用来作为网 】 站中的导航条,当不同的用户登录时,导航条 显示内容不同;
使用用户控件将用户控件放入页面指定位置即可 <%@ Register Src="../_Controls/UserLoginControl.ascx" TagName="UserLoginControl" TagPrefix="uc1" %> 在页面中注册控件
页面中注册和使用
……
<uc1:UserLoginControl ID= "ulcLogin" runat="server" />
TagPrefix:该属性定义了用户控件所使用 的前缀,就是说它将前缀与用户控件相 关联,说明使用的是用户控件中的一种。 TagName:定义用户控件名称。 Src:包括在web窗体中用户控件的虚拟 路径。
注意事项用户控件中可以使用其他用户控件可以像页面一样,在用户控件中使用其他用 户控件 用户控件1 用户控件 用户控件2 用户控件 但用户控件中不可包含自己,也不能发生任 何循环嵌套 用户控件1 用户控件
用户控件与Page用户控件与页面的区别?后缀名:用户控件以.ascx为后缀名,而页面 后缀名是.aspx 指令:用户控件为@Control,页面是@Page 继承:用户控件继承自 页面:容器; 页面:容器; http://doc.guandang.neterControl,而页面继承自 用户控件:内容。 用户控件:内容。 System.Web.UI.Page 用户控件不可直接访问,页面可直接访问
7.2 母版页和内容页使
用母版页(MasterPage)可以为应用程序中的 页创建统一的布局。母版页可以为应用程序中 的所有页(或一组)定义所需的外观和标准行为。 当用户请求内容页时,http://doc.guandang.net将会把母版页 和内容页这两种文件的内容合并执行,输出结 果对母版页的布局和内容页的内容进行了合并。
母版页用于设置页面外观的模板 一种特殊的http://doc.guandang.net网页文件 扩展名是.master
内容页引用母版页的.aspx页面称为内容页
母版页它可以包括静态文本、HTML元素和服务器控件。通 常是用于布局,即定义网站中不同网页的相同部分。 母版页代码和普通的.aspx代码格式很相近,最关键 的不同是母版页由特殊的@ Master指令识别,该指 令替换了用于普通.aspx页的@ Page指令,格式如下:<%@ Master Language="C#" CodeFile = "MasterPage.master.cs" Inherits = "MasterPage" %>
母版页代码结构<%@ Master Language="C#" %> <html xmlns="http://doc.guandang.net/1999/xhtml" > <head id="Head1" runat="server" > <title>Master page title</title> </head> <body> <form id="form1" runat="server"> <asp:contentplaceholder id="Main" runat = "server" /> <asp:contentplaceholder id="Footer" runat = "server" /> </form> </body> </html>
内容页以母版页为基础,可以在内容页中添加网站中的每 个网页的不同部分。对于页面的非公共部分,在母 版页中使用一个或多个ContentPlaceHolder控件来 占位,而具体内容则放在内容页中。 例如,如上例代码所示,母版页包含两个 ContentPlaceHolder控件,Main和Footer,用于占 位。在内容页中,创建两个Content控件,一个映 射到ContentPlaceHolder控件Main,而另一个映射 到ContentPlaceHolder控件Footer,如图 4-1所示。
母版页和内容页的结构
母版页的运行过程在运行时,母版页是按照下面的步骤处理的:1. 2.
用户通过键入内容页的URL来请求某页。 获取该页后,读取@ Page指令。如果该指令引用一 个母版页,则也读取该母版页。如果这是第一次请 求这两个页,则两个页都要进行编译。 包含更新的内容的母版页合并到内容页的控件树中。 各个Content控件的内容合并到母版页中相应的 ContentPlaceHolder控件中。 浏览器中呈现得到的合并页。
3. 4.
5.
创建母版页和内容页母版页中包含一个内容占位符,这是母版页中的 可变区域,使用内容页中的信息来替换此区域
…… 此处隐藏:1120字,全部文档内容请下载后查看。喜欢就下载吧 ……- 基于PLC控制的航空电镀生产线自动输送
- 中考预测课内外文言文对比阅读2
- 2018-2023年中国商业智能(BI)产业市场
- 中国金融体制改革研究2011new
- 外窗淋水试验方案
- 精益生产(Lean Production)
- 学校安全事故处置和信息报送制度
- Chapter 5 Human Resources Management
- 【小学数学】人教版小学六年级上册数学
- 初中数学解题方法与技巧
- 山东省创伤中心建设与管理指导原则(试
- 函数与数列的极限的强化练习题答案
- 10分钟淋巴按摩消脂
- 网络应急演练预案
- 服装设计入门基础知识
- 初二数学分式计算题练习
- (人教新课标)高二数学必修5第二章 数列
- 最新自主创业项目
- 北京大学 无机化学课件 4第4章 配合物
- 贸易公司业务管理制度




