禁用usercontrol

时间:2010-02-16 09:45:49

标签: .net asp.net

如何禁用usercontrol以便不执行Page_Load? 用户控件不存在已启用 和Visible不起作用,它只是隐藏用户控件,但页面加载已执行。

2 个答案:

答案 0 :(得分:3)

这样做:

将此内容添加到页面顶部<%@ Reference Control =“〜/ MyControl.ascx”%>

然后当你需要控件时,只需将它添加到你喜欢的地方

ControlPlaceHolder.Controls.Add(Page.LoadControl( “〜/ MyControl.ascx”))

这样控件只会在您需要时加载。

答案 1 :(得分:0)

您可以在使用this.Controls.Remove(xxx)进行渲染之前删除控件 在preInit但你想要让这种情况始终如一。例如。如果您在第一次为请求提供服务时删除控件,然后在回发时启用它,则可能在反序列化viewstate时出现问题。也许。值得一试