5

有一个广泛的任务。有一个更新面板upDetails,当用户从主表中选择任何项目时,它会显示详细信息表(最初可见= false),我们应该设置详细信息.Visible = true;

但它在我放置它的任何地方/事件中都不起作用——既不是 BL 方法,也不是预渲染。它仍然是看不见的

但是当我不让它最初不可见时,一切正常

我做错了什么?

提前致谢

4

4 回答 4

10

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

于 2009-02-26T11:22:18.510 回答
3

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

使用占位符可以解决您的问题。

于 2011-05-27T07:43:25.243 回答
2

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

于 2010-02-04T06:41:18.733 回答
1

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

于 2009-03-04T18:00:01.297 回答