我正在使用 C# 的 ASP .NET 4.0。我有一个 Web 表单,其中所有布局都存在于 UpdatePanel 中。里面有以下内容:
用于通过文本框和搜索按钮输入搜索条件的面板
使用动画 .gif 更新进度
带有根据我的第一个存储过程(使用搜索条件)填充的中继器的面板 - 每行内部都有一个 LinkButton,单击该按钮时会调用我的第二个存储过程并在中继器行中填充面板。我正在中继器的 ItemCommand 事件的代码隐藏中填充面板。我将 LinkButton 上的 CommandArgument 用于第二个存储过程。我有一个 CollapsiblePanelExtender 来为包含第二个存储过程中的数据的面板设置动画。
我可以正常工作,但不是我想要的方式。单击搜索按钮时,UpdateProgress 会显示我的动画 .gif。但是,当在 Repeater 数据行中单击 LinkButton 时,我的第二个存储过程需要大约 6 秒的时间来处理。我想要一个 UpdateProgress 在发生这种情况时显示动画 .gif。我尝试通过实现第二个 UpdatePanel 来解决此问题,但我根本无法触发 UpdateProgress。任何帮助将不胜感激。提前致谢。
最佳答案
我现在一切都正常了。
经过大量挖掘,我发现了这个:How to do AsyncPostBackTrigger for the LinkButton in the Repeater
我能够在我的页面指令中使用它:ClientIDMode="AutoID"
我最终还向中继器数据行添加了一个 ImageButton,无论我单击 LinkButton、ImageButton 还是搜索按钮,我现在都能得到所需的结果 - UpdateProgress 会触发并显示动画 .gif 文件。
我的 UpdateProgress 驻留在我的 UpdatePanel 内部,并且将 AssociatedUpdatePanelID 设置为我的 UpdatePanel 的 ID。
我希望这对某人有帮助。
关于updatepanel - ASP .NET 在 UpdatePanel 内使用带有 UpdateProgress 的中继器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22208882/