母版页

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);
    }
原文地址:https://www.cnblogs.com/zhang-dandan-1/p/6064781.html