是否有可能从内容(.aspx)页面中删除母版页(.master)中的用户控件(.ascx) ?



我有一个母版页,它被继承到很多内容页。我有一个特定的页面,我不希望在母版页中存在一个用户控件。我不想为此创建一个单独的母版页。我想知道是否有任何方法可以防止母版页中存在的用户控件被继承到子/内容页。谢谢你的帮助。谢谢!

在用户控件中

protected void Page_Init(object sender, EventArgs e)
{
    Css.Register(this, "/css/reset.css", BrowserTarget.All, true);
}

在母版页中,添加了用户控件

部分(css在reset.css)我试图删除/防止被继承内容页

ol, ul {
list-style: none;
}

可以在子控件中使用:

((UserControl)this.Master.FindControl("userControlName")).Visible = false;

为了使控件永远不存在与你所说的和你的反馈隐藏不适合你的需要,我猜删除控件也不会。

这里唯一的其他选项是更改母版页,使其具有加载控件的标志。这将方法从"删除这个如果"变为"包含这个当"。然后,在您的呼叫页面中,您需要设置该标志。为了使这个新更改的侵入性更小,将默认值设置为true,并在此页中将其设置为false。

试试这个

    MasterPage master = this.Master;
    UserControl userControl = (UserControl)master.FindControl("userControlName");
    if(userControl != null)
{
    master.Controls.Remove(userControl );
}

最新更新