[NextPage] 以上粗体代码是内容页的代码结构。从中可以看出,内容页与普通.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控件中包含的内容将显示在母版页中的对应位置。
图3所示显示了内容页Index.aspx的设计时截图。
图3 内容页设计时视图
同母版页一样,Visual Studio 2005支持对于内容页的可视化编辑,并且这种支持是建立在只读显示母版页内容基础上的。在编辑状态下,可以查看母版页和内容页组合后的页面外观,但是,母版页内容是只读的(呈现灰色部分),不可被编辑,而内容页则可以进行编辑。如果需要修改母版页内容,则必须打开母版页。