1、什么是母版页?
母版页为具有扩展名.master(如 MySite.master的ASP.NET 文件,
它具有可以包括静态文本、HTML 元素和服务器控件的预定义布局。
它专门设计用于标准化 Web 页面布局。它可定义固定的内容并声明
Web页面里可插入自定义内容的部分。如果在整个网站中使用同一个
母版页,就可以确保获得同样的布局。最妙的是,如果修改了母版页
的定义,应用它的所有页面都会自动变化。
2、创建母版页
(1)创建母版页
添加新项--母版页--修改名称--添加
(2)嵌套母版页
添加新项--母版页--修改名称的右边“选择母版页”--添加后弹出页面 选择母版页
(3)创建使用母版页的web窗体
添加新项--web窗体--修改名称的右边“选择母版页”--添加后弹出页面 选择母版页
3、使用母版页
//母版页预留位置 <asp:ContentPlaceHolder ID="head" runat="server"> </asp:ContentPlaceHolder>
//使用母版页的web窗体的填充位置,填充在控件里边
//这个控件可从工具箱中添加,添加后修改id,防止重名
<asp:Content ID="Content1" ContentPlaceHolderID="mp2_content1" runat="Server"> </asp:Content>
4、数据传递
(1)给一级母版页传值
//先把子页面中文本框的值取出来 string s = TextBox2.Text; //先找到母版页 母版页名称 m1 = this.Master as 母版页名称; 控件类名 t1 = m1.FindControl("id") as 控件类名; t1.Text = s;
(2)给二级母版页和一级母版页传值
//web窗体代码 string s = TextBox3.Text; 二级母版页名称 m2 = this.Master as 二级母版页名称; m2.aaaa(s);//二级母版页中的方法 //二级母版页代码 public void aaaa(string ss) { TextBox2.Text = ss;//将web窗体的值传到二级母版页 //二级母版页的值传到一级母版页 MP1 m1 = this.Master as MP1; TextBox t1 = m1.FindControl("TextBox1") as TextBox; t1.Text = ss; }
5、文件路径
CSS自动生成路径,JS不自动生成路径
JS路径映射
<script src="<%=YingShe("js/JavaScript.js") %>"></script> //后台写方法 public string YingShe(string s) { return ResolveClientUrl(s); }