asp.net设置标题 兼MasterPage得使用
2009-11-06 09:18
405 查看
<%@ Page Language="C#" MasterPageFile="~/MasterPage/Common.master" AutoEventWireup="true" CodeFile="SceneList.aspx.cs" Inherits="Scene_SceneList" Title="韶关旅游通---旅游景区列表" %>
this.Master.Page.Header.Title = "aa";
this.Page.Title = "bb";
内容页一般不需要cs文件,单独成一个文件,然后使用USER_CONTROL
=============================
一 设置Title
1 如果想所有使用了masterpage的页面都是用一个title ,可以在masterpage页中设置title,并将内容页中的title去掉,否则内容页中的title会将masterpage中的title覆盖。
<%@ Page Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true" CodeFile="MasterpageTest.aspx.cs" Inherits="MasterpageTest" Title="Test"%>
改成
<%@ Page Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true" CodeFile="MasterpageTest.aspx.cs" Inherits="MasterpageTest" %>
2 如果想每个页面中使用不同等title就比较简单,在内容页中设置就可以,masterpage中的title不用去管 ,应为最终会被内容页中的覆盖掉。
二 在内容页取 masterpage中的属性和字段
在内容页中取masterpage中的属性或字段应该是比较常用的。创建一个masterpage页MasterTest.master 和内容页Test.aspx,在MasterTest.master的后台代码中添加一个属性,如下
private string m_Name;
public string Name
{
get { return m_Name; }
set { m_Name = value; }
}
然后在内容页的后台代码中你会发现不能访问masterpage中的属性,这时切换到内容页的源里 在上面添加
<%@ MasterType VirtualPath="~/MasterTest.master" %>
再切换到后台中 就可以访问masterpage中的属性了。
三 masterpage页的作用范围
1 页面级
通常情况下我们使用masterpage都是页面级的,就是在每个内容页中都会来指定masterpage的名字,通过MastPageFile属性来设置,如下
<%@ Page Language="C#" MasterPageFile="~/MasterPage.master" %>
2 应用程序级
这中就是只需在webconfig文件中做相应配置,全站所有的内容页都会引用设置的masterpage,如在webconfig中添加如下代码
<configuration>
<system.web>
<pages masterPageFile="~/Test.master" />
</system.web>
</configuration>
这样在内容页中就不用再去设置MastPageFile属性了,所有的内容页都会使用Test.master 。如果有些页面比较特殊需要用其他的masterpage ,可以这是MastPageFile属性,将会覆盖在webconfig中的配置。
用这种方法也可以对某些文件夹中的所有文件来进行设置,配置如下
<configuration>
<location path="Admin">
<system.web>
<pages masterPageFile="~/ Test.master " />
</system.web>
</location>
</configuration>
Location的path属性设置路径
================================
ASP.NET Master Page改变内容页title方法
在定义好母版页以后,有时我们需要改变网页的标题但是如果直接在母版页中更改title属性又会导致其他的内容页出现相同的title情况,VS2008中提供了母版页的新功能。
1.通过内容页中的Page指令中Title属性改变内容页title:
<%@ Page Language=”C#” MasterPageFile=”~/MyMaster.master” Title=”My Title” %>
2.通过编程改变:前提是<head>标志必须是运行在服务器端,即要给它加上runat="server"属性
void Page_Load()
{
Page.Header.Title="My Title";
}
3.通过内容页的head占位符控件,在VS2008中添加的母版页会在头部有如下按商品asp:ContentPlaceHolder控件(把母版页的title标签拖到该控件内)
<asp:ContentPlaceHolder id="head" runat="server">
<title>无标题页</title>
</asp:ContentPlaceHolder>
而内容页往往会添加一个对应的asp:Content控件,只需要改变其中的title标签内容即可
<asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server">
<title>无标题页</title>
</asp:Content>
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/cxzhq2002/archive/2008/12/17/3539685.aspx
this.Master.Page.Header.Title = "aa";
this.Page.Title = "bb";
内容页一般不需要cs文件,单独成一个文件,然后使用USER_CONTROL
=============================
一 设置Title
1 如果想所有使用了masterpage的页面都是用一个title ,可以在masterpage页中设置title,并将内容页中的title去掉,否则内容页中的title会将masterpage中的title覆盖。
<%@ Page Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true" CodeFile="MasterpageTest.aspx.cs" Inherits="MasterpageTest" Title="Test"%>
改成
<%@ Page Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true" CodeFile="MasterpageTest.aspx.cs" Inherits="MasterpageTest" %>
2 如果想每个页面中使用不同等title就比较简单,在内容页中设置就可以,masterpage中的title不用去管 ,应为最终会被内容页中的覆盖掉。
二 在内容页取 masterpage中的属性和字段
在内容页中取masterpage中的属性或字段应该是比较常用的。创建一个masterpage页MasterTest.master 和内容页Test.aspx,在MasterTest.master的后台代码中添加一个属性,如下
private string m_Name;
public string Name
{
get { return m_Name; }
set { m_Name = value; }
}
然后在内容页的后台代码中你会发现不能访问masterpage中的属性,这时切换到内容页的源里 在上面添加
<%@ MasterType VirtualPath="~/MasterTest.master" %>
再切换到后台中 就可以访问masterpage中的属性了。
三 masterpage页的作用范围
1 页面级
通常情况下我们使用masterpage都是页面级的,就是在每个内容页中都会来指定masterpage的名字,通过MastPageFile属性来设置,如下
<%@ Page Language="C#" MasterPageFile="~/MasterPage.master" %>
2 应用程序级
这中就是只需在webconfig文件中做相应配置,全站所有的内容页都会引用设置的masterpage,如在webconfig中添加如下代码
<configuration>
<system.web>
<pages masterPageFile="~/Test.master" />
</system.web>
</configuration>
这样在内容页中就不用再去设置MastPageFile属性了,所有的内容页都会使用Test.master 。如果有些页面比较特殊需要用其他的masterpage ,可以这是MastPageFile属性,将会覆盖在webconfig中的配置。
用这种方法也可以对某些文件夹中的所有文件来进行设置,配置如下
<configuration>
<location path="Admin">
<system.web>
<pages masterPageFile="~/ Test.master " />
</system.web>
</location>
</configuration>
Location的path属性设置路径
================================
ASP.NET Master Page改变内容页title方法
在定义好母版页以后,有时我们需要改变网页的标题但是如果直接在母版页中更改title属性又会导致其他的内容页出现相同的title情况,VS2008中提供了母版页的新功能。
1.通过内容页中的Page指令中Title属性改变内容页title:
<%@ Page Language=”C#” MasterPageFile=”~/MyMaster.master” Title=”My Title” %>
2.通过编程改变:前提是<head>标志必须是运行在服务器端,即要给它加上runat="server"属性
void Page_Load()
{
Page.Header.Title="My Title";
}
3.通过内容页的head占位符控件,在VS2008中添加的母版页会在头部有如下按商品asp:ContentPlaceHolder控件(把母版页的title标签拖到该控件内)
<asp:ContentPlaceHolder id="head" runat="server">
<title>无标题页</title>
</asp:ContentPlaceHolder>
而内容页往往会添加一个对应的asp:Content控件,只需要改变其中的title标签内容即可
<asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server">
<title>无标题页</title>
</asp:Content>
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/cxzhq2002/archive/2008/12/17/3539685.aspx
相关文章推荐
- [转]Asp.net中masterpage的使用
- asp.net动态设置masterpage实现换肤
- Asp.net 2.0的一些小心得 (三) Master Page的使用
- IIS部署ASP.NET网站后提示只有在配置文件或 Page 指令中将 enableSessionState 设置为 true 时,才能使用会话状态...
- ASP.NET中使用MasterPage和PageBase页面基类(多用户session)(转)
- 设置页面的默认焦点控件和默认接受事件控件How Do I Set the DefaultFocus or DefaultButton in a Page Based on a Master Page in ASP.NET 2.0
- ASP.NET学习笔记[2] - 关于使用Master.Page的几点注意事项
- 在ASP.NET AJAX中,由于一个ASPX页面上只能有一个ScriptManager控件,所以在有母版页的情况下,如果需要在Master-Page和Content-Page中需要引入不同的脚本时,这就需要在Content-page中使用ScriptMa
- 如何在ASP.NET 2.0 中的Master Page具体页面中 使用CSS?
- 关于ASP.NET中使用MasterPage和PageBase页面基类的一些体会
- ASP.NET 2.0中动态混合使用MasterPage和主题
- 关于ASP.NET中使用MasterPage和PageBase页面基类的一些体会
- ASP.NET Master Page使用(转)
- ASP.NET 使用PageBase来控制用户登陆
- ASP.NET里masterpage的javascript问题
- 使用 ASP.NET Atlas PageNavigator控件实现客户端分页导航
- 使用 jQuery 调用 ASP.NET AJAX Page Method
- Asp.net中动态设置标题Title,Keyword,Descripton标签的方法
- Asp.net程序的Master_page模式
- ASP.NET AJAX 's UpdatePanel 中使用Page.ClientScript.RegisterStartupScript 失败