一个MasterPage可以有一个以上的ContentPlaceHolder控件。开发人员通过ContentPlace- HolderID指定网页的内容所要嵌入的ContentPlaceHolder区域。现在,我们通过另外一个示例,看看多个ContentPlaceHolder的主版页面如何配置。
示例Mpage/UMCPlaceHolder.aspx
在上述的示例网站项目中,建立一个新的主版页面,将其命名为MCPlaceHolder,建立一个MasterPage,在其中配置两个ContentPlaceHolder,分别将其命名为"CPHolderA"与"CPHolderB",完成后的网页如下图所示。
现在,建立一个新的Web Form网页,将其勾选为UMCPlaceHolder,勾选"选择主版页面"复选框,套用此主版页,得到以下的网页内容。
在默认的情形之下,编辑器会自动为每一个主版页面的ContentPlaceHolder控制页配置其对应的Content标签,切换到原始文件,得到如下的程序代码:
ID="CPHolderA" Runat="Server">
ID="CPHolderB" Runat="Server">
由于在主版页面里配置了两个ContentPlaceHolder,因此这里便会有其相对应的Content控件,它们之间存在一对一的关联,并且通过ContentPlaceHolderID属性设置其所属的ContentPlaceHolder。网页的内容配置在其所属的ContentPlaceHolder当中。现在切换到设计页面,在其中的Content中加入一个书籍介绍内容。完成之后,打开浏览器观看设计结果,如下图所示。
现在,我们进一步来看看,如果调整默认的内容,会发生什么样的情况。