文章转自 http://wenku.baidu.com/link?url=7sLN0ihgZQ1XfX47b_y8qbpIVjS5T75Q1xvaoyIQ6OiKIgvzyVyRccnU9e9fqoOm4DBTxNyPPipgGlq8n5l4cePZngx1J-va9PNFmdRn2se
母版页中ContentPlaceHolder控件的作用。当母版页被一个页面引用时,
页面内容与母版页上的ContentPlaceHolder控件合并,生成最终输出。
ContentPlaceHolder控件的ID属性与映射到引用页面上一个类似的ID中。
当母版页上有不止一个ContentPlaceHolder控件时,这种映射关系是很有用的。
可以在ContentPlaceHolder控件外添加任何HTML标记和任何其他控件。
告诉他们母版页上的任何服务器端代码都将在所有引用它的页面上执行。
解释ContentPlaceHolder控件的作用。每一个页面自身特定的内容将被放置在ContentPlaceHolder控件内。
解释内容页的概念。结合下例解释@Page指令及其属性:
<%@PageLanguage="C#"MasterPageFile="~/MasterPages/Master1.master"%>
Language属性定义使用的默认语言,而MasterPageFile属性定义使用的母版文件的路径。
解释Content控件用于向内容页添加特定于页面的内容。所有特定于页面的内容必须放置在Content控件里。
引用页面的Content控件与母版页的对应ContentPlaceHolder控件之间存在映射关系,这是通过映射它们的ID来实现的。
最后,结合以下示例解释母版页的ContentPlaceHolder控件与内容页的Content控件之间的关系:
//MasterFile:A.Master
<%@Master%>
<asp:ContentPlaceHolderID= "topContent" runat= "server">
//ContentFile:A.aspx
<%@PageMaster= "A.Master"%>
<asp:ContentID= "Content1" ContentPlaceHolderID= "topContent" runat= "server">
--Somemarkup--
</asp:Content>
在内容文件(A.aspx)的样本代码中,<%@Page%>指令的master 属性用于引用运行时内容文件将使用的母版文件。
母版文件(A.master)里ContentPlaceHolder控件的ID 属性值与内容文件(A.aspx)里的ContentPlaceHolderID属性值是一样的。
运行时,当浏览器请求A.aspx时,那么这两个属性将会被映射,从而合并Content控件的内容与对应的ContentPlaceHolder控件。
新闻热点
疑难解答