从其他页面的ASP.NET母版页中排除内容

时间:2017-08-02 14:26:43

标签: c# asp.net master-pages

是否可以从继承母版页的内容页面中排除布局(页眉,侧边栏和页脚)? 我因为重复布局的情况而问:

enter image description here

在master中有一个像这样的结构:

<body>
<!-- HEADER -->

<!-- Menu -->
<!-- CONTENT -->
<form enctype="multipart/form-data" id="form1" runat="server" autocomplete="off">
                                <div>
                                    <asp:contentplaceholder id="ContentPlaceHolder1" runat="server"></asp:contentplaceholder>
                                </div>
                            </form>
<!-- FOOTER -->
</body>

在内容页面(.aspx)中有一个结构

<%@ Page Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" Inherits="Site.WebBasePage"
    EnableEventValidation="false" JFormID="Form" %>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
<j:Tab Name="Tab2" runat="server" ID="detail">
                <iframe class="embed-responsive-item" id="detail" frameborder="0" src="about:blank" width="100%" height="100%"></iframe>
            </j:Tab>

</asp:Content>

在上面的代码中,调用另一个aspx文件,其中是详细信息表单。

1 个答案:

答案 0 :(得分:0)

您可以通过以下代码隐藏您不希望在内容页面上显示的内容占位符

//获取当前页面的母版页

从这里你可以找到这样的相关占位符:

PlaceHolder objPlaceHolder = this.Page.Master.FindControl("PlaceHolderID") as PlaceHolder;
if(objPlaceHolder == null)
{
    // doesn't exist content place holder.
}
else
{
    objPlaceHolder.Visible = false;
}

这将隐藏子页面中母版页的内容占位符