0

我的 ASP.Net (3.5) 页面中的控件以模拟弹出窗口 (Visual-Studio 2008)。问题是所有这些弹出窗口都位于设计模式下页面中的普通控件之上。

所以我的问题是:如何在设计模式下隐藏用户控件。

4

2 回答 2

2

如果您使用的是用户控件,则可以利用设计器忽略您的代码这一事实。我得到了以下工作:

在您的用户控件中创建两种样式:

<style type="text/css">
    .hide
    {
        display:none;
    }
     .show
    {
        display:;
    }
</style>

在您的用户控件中创建两个 asp 面板:

<asp:Panel ID="pnlDesigner" runat="server" CssClass="show">
Put content you want to show in designer here
</asp:Panel>
<asp:Panel ID="pnlDisplay" runat="server" CssClass="hide">
Put all your actual content here
</asp:Panel>

将此添加到您的代码中:

 protected override void OnPreRender(EventArgs e)
    {
        pnlDisplay.CssClass = "show";
        pnlDesigner.CssClass = "hide";

        base.OnPreRender(e);
    }

对我来说,这创造了在设计器中为我的用户控件呈现一小块文本的预期效果

于 2011-01-03T21:27:06.440 回答
0

从谷歌搜索一下,我认为你不能使用 ascx。我认为如果你需要的话,你应该把它变成一个自定义控件。

http://www.west-wind.com/WebLog/posts/189.aspx可能会有所帮助

编辑:http ://ajdotnet.wordpress.com/2006/08/28/do-you-value-design-time-support/

如果您创建一个包含用户控件实例的自定义控件,并使用上面链接的方法来隐藏其所有内容,您也许可以做到这一点。

于 2009-11-23T09:22:45.017 回答