具有多个内容占位符的母版页

时间:2009-07-14 14:54:42

标签: asp.net master-pages

我有一个与Master PAge和ContentPlaceHolder1绑定的default.aspx文件并显示正常,有没有办法在ContentPlaceHolder2中让另一个页面说info.aspx自动显示?

2 个答案:

答案 0 :(得分:0)

将ContentPlaceHolder视为MasterPages的“填空”。我认为您正在寻找的更多是用户控件,这是一个内容/功能,您可以插入任何您想要的地方。

答案 1 :(得分:0)

如果有办法可以将Info.aspx的内容转换为用户控件(应该非常简单),

如果是这样,这是一个很容易解决的问题,请将新的ascx放在母版页的占位符中。

On Master:

<div class="mainContent">
    <!-- Each Page Content Will Go Here -->
    <asp:ContentPlaceHolder ID="cph_MainContent" runat="server">
    </asp:ContentPlaceHolder>
</div>

<div class="bottomContent">
    <asp:ContentPlaceHolder ID="cph_BottomContent" runat="server">
        <!-- Each Page will Display this UNLESS it referenced this placeholder -->
        <!-- Put you INFO.ASCX control here -->
    </asp:ContentPlaceHolder>
</div>

然后您只需在内容页面上注释或删除第二名持有者的标签:

<asp:Content ID="Content2" ContentPlaceHolderID="cph_MainContent" runat="server">
 you page content
</asp:Content>

<%-- 
this will make the master use the content inside the holder on its own page

<asp:Content ID="Content3" ContentPlaceHolderID="cph_BottomContent" runat="server">

</asp:Content>
--%>