如何将母版页分配给现有的.aspx页面?

11 .net asp.net

如何将母版页分配给现有的.aspx页面?

Sim*_*ith 15

将其添加到现有的aspx页面声明中:

MasterPageFile="~/SomeMasterPage.Master"
Run Code Online (Sandbox Code Playgroud)

还应该提到,要向页面添加页面特定内容,您还需要将任何内容标记(在母版页中定义)添加到您的aspx页面:

 <asp:Content ID="myContent" ContentPlaceHolderID="someContent" runat="server">

      // Page Content goes here

 </asp:Content>
Run Code Online (Sandbox Code Playgroud)

如果您不插入这些内容,则使用主页面中的默认内容.

  • 你也应该添加<asp:Content ...>标签! (2认同)

Hot*_*ter 5

将现有的 .aspx 页面分配给母版页时,网页的所有基本元素现在都驻留在母版页中,例如标题、正文、标题等。因此,如果您的页面使用这些元素是为了给网页提供标题等,在标签中定义javascripts...所有这些操作现在都需要在母版页上完成。但是,如果您需要在子页面级别为这些元素分配相应的值,那么您需要在母版页的 head 标记中定义一个内容占位符。另一个内容占位符应放置在母版页的正文中。

在子页面,您将有两个内容占位符,一个用于头部,另一个用于身体。之后,您需要将所需的代码放在相应的内容占位符中。

  • 至少在最新的 ASP.NET 工作中,您可以很容易地在内容页面上设置页面标题,使用 `this.Title = "something"` 来覆盖母版页标题。同样,您可以在内容页面中使用对`ClientScript.RegisterClientScriptBlock` 或`ClientScript.RegisterStartupScript` 的调用来添加javascript;如果在 content 和 master 上为相同的脚本使用相同的名称,即使您在两个地方进行相同的调用,结果输出页面中也只有一个嵌入。 (2认同)