ASP.NET母版页和内容页之间如何互相传值

转载 2012年03月28日 17:11:20

我们在asp.net中创建一个完整的母版页之后,接下来必然要创建内容页。从用户访问的角度来讲,内容页与最终结果页的访问路径相同,这好像表明二者是同一文件,实际不然。结果页是一个虚拟的页面,没有实际代码,其代码内容是在运行时状态下母版页和内容页合并的结果。

在开始介绍内容页之前,还有两个概念需要强调:一是内容页中所有内容必须包含在Content控件中;二是内容页必须绑定母版页。虽然内容页的扩展名与普通ASP.NET页面相同,但是,其代码结构有着很大差别。在创建内容页的过程中,必须时刻牢记以上两个重要概念。

内容页Index.aspx文件源代码
 

<%@ Page Language="C#" MasterPageFile="~/MasterPage.master" CodeFile="Index.aspx.cs" Inherits="Index" Title="示例5-1" %>

<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" runat="Server">

    <img src="images/pagepic.gif" width="244" height="223" />

</asp:Content>

<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder2" runat="Server">

    <p>&nbsp;</p><p>&nbsp;</p>

    <h1>网站介绍_IT知道网()</h1>

    <p>本页面采用来自ASP.NET 2.0技术的母版页新特性进行开发。主要包括两个页面:母版页和内容页。 母版页后缀名是.master,其封装网站中的共用元素。内容页实际是普通的.aspx文件,它包含除母版页的其他内容。在运行时,ASP.NET引擎将两种页面内容合并执行,最后将结果发给客户端浏览器。</p>

</asp:Content>

 以上粗体代码是内容页的代码结构。从中可以看出,内容页与普通.aspx文件在代码上的不同。内容页没有<html>、<body>、<form>等关键Web元素,这些元素都被放置在母版页中。内容页中除了代码头声明,仅包含Content控件。内容页的代码头声明与普通.aspx文件相似。但是,新增加了两个属性MasterPageFile和Title。属性MasterPageFile用于设置该内容页所绑定的母版页的路径,属性Title用于设置页面title值。在创建内容页过程中,由于已经指定了所绑定母版页,因此,Visual Studio 2005将自动设置MasterPageFile属性值。另外,在源代码中,还设置了两个Content控件Content1和Content2。

两个控件内部包含的内容是页面的非公共部分。通过设置属性ContentPlaceHolderID,将Content1与母版页的ContentPlaceHolder1对应,将Content2与母版页的ContentPlaceHolder2对应。在页面运行时,Content控件中包含的内容将显示在母版页中的对应位置。

ASP.NET之母版页和内容页之间的传值

获取母版页上文本框的值赋给内容页的文本框
this.TextBox1.Text = (Master.FindControl("textBox1") as TextBox).Text;
 
获取内容页上文本框的值赋给母版页的文本框
TextBox1.Text = (this.ContentPlaceHolder1.FindControl("textBox1") as TextBox).Text;

相关文章推荐

ASP.NET页面同时存在自定义控件,母版页,内容页的加载顺序

ASP.NET 母版页和内容页中的事件 母版页和内容页都可以包含控件的事件处理程序。对于控件而言,事件是在本地处理的,即内容页中的控件在内容页中引发事件,母版页中的控件在母版页中引发事件。控件事件不...
  • cqkxzyi
  • cqkxzyi
  • 2012年01月10日 13:40
  • 861

ASP.NET 母版页与内容页 修改、加载、调用控件等问题汇总

一、使用多种方式为内容页加载母版页 默认情况下是给单个内容页指定一个母版页加载,当多个内容页需加载到同一个母版页时,我们可以通过配置文件为多个内容页批量加载母版页,另外,还可以在PreInit事件中...
  • VS_URL
  • VS_URL
  • 2012年06月03日 15:27
  • 2347

ASP.NET 母版页与内容页 修改、加载、调用控件等问题汇总

一、使用多种方式为内容页加载母版页 默认情况下是给单个内容页指定一个母版页加载,当多个内容页需加载到同一个母版页时,我们可以通过配置文件为多个内容页批量加载母版页,另外,还可以在PreInit事...

ASP.NET 母版页和内容页中的事件(转)

http://www.cnblogs.com/stargazer/archive/2011/03/12/1982101.html 很久没有做web方面的项目了。今天有幸给问道关于web的page初始化...
  • osnot
  • osnot
  • 2011年04月16日 13:42
  • 922

ASP.NET:母版页与内容页

ASP.NET:验证控件 ASP.NET:母版页与内容页 ASP.NET:主题中的皮肤和样式表 一、使用多种方式为内容页加载母版页 默认情况下是给单个内容页指定一个母版页加...

ASP.NET:母版页与内容页

ASP.NET:验证控件 ASP.NET:母版页与内容页 ASP.NET:主题中的皮肤和样式表  一、使用多种方式为内容页加载母版页 默认情况下是给单个内容页指定一个母版页...
  • sxycgxj
  • sxycgxj
  • 2011年09月05日 08:48
  • 3682

ASP.Net访问母版页(MasterPage)控件、属性、方法及母版页中调用内容页,获取用户自定义控件里面的子控件的方法

今天做项目突然遇到一个问题,就是母板页里面有个表格,调用有 A,B,C三个Class  但是在新页面我不想要这个三个Class,经过高人点拨。通过访问母板页属性实现了 这个效果 ...
  • wyh0318
  • wyh0318
  • 2012年03月05日 15:56
  • 424
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:ASP.NET母版页和内容页之间如何互相传值
举报原因:
原因补充:

(最多只允许输入30个字)