UpdatePanel.Visible = true无效

时间:2009-02-26 11:13:18

标签: asp.net ajax panel visible

有一项艰巨的任务。 有一个更新面板upDetails,显示详细信息表(initialy visible = false) 当用户从主表中选择任何项时,我们应该设置upDetails.Visible = true;

但无论我放置什么地方/事件它都没有用 - 既不是BL方法,也不是预渲染。它仍然是隐形的

但是当我不能使它初始隐形时,一切正常

我做错了什么?

提前致谢

4 个答案:

答案 0 :(得分:9)

您是在谈论 ASP.NET Ajax UpdatePanel 控件吗?尝试在UpdatePanel中放置一个“真正的”Panel Control(asp:Panel),并在该控件上设置visibilty false / true,并使UpdatePanel保持可见。

答案 1 :(得分:3)

如果updatepanel可见性设置为false,则不会在输出上呈现它。 没有呈现,它不存在客户端,然后它不能使用(不是由ajax事件)。

使用占位符是解决问题的方法。

答案 2 :(得分:2)

不幸的是,我搜索了很长时间,进行了实验,无法让它工作。我最后的决定是将我想要显示/隐藏的内容包装在占位符控件中。它们为您提供了在不添加标记的情况下切换可见性的灵活性。

答案 3 :(得分:1)

您应该检查以确保包含面板的任何控件都可见。如果不是这样,在updatepanel控件上设置visible属性将不会执行任何操作,因此您需要确保容器控件是第一个可见的。