无论处理时间如何,都会触发updateprogress

时间:2012-12-20 13:29:29

标签: asp.net ajax updatepanel updateprogress

是否可以触发我的UpdateProgress,这样即使处理速度更快,我也可以让我的加载动画显示一段时间?

我有一个下拉列表,用于更改所选索引更改的表格中的结果,并且处理速度太快,因此用户很难判断是否发生了任何事情。

我希望我的加载gif出现半秒只是为了显示已发生的事情。这可以通过更新面板控件实现,还是必须编写一些javascript才能执行此操作?

除此之外,我真的不想在点击按钮上做事情:

System.Threading.Thread.Sleep(1000);

1 个答案:

答案 0 :(得分:0)

根据documentation

  

默认情况下,UpdateProgress控件在显示其内容之前会等待.5秒(500 milliseconds)。如果异步回发非常快,这有助于防止控件闪烁。您可以通过设置DisplayAfter属性来指定延迟。

因此,您可以将此值设置为其他值,以便将UpdateProgress设置得更快。但我认为这不能解决你的问题,所以试试这个:

  

如果您需要更好地控制何时显示UpdateProgress控件,您可以为beginRequest类的endRequestPageRequestManager事件提供客户端脚本。在beginRequest事件处理程序中,您可以显示表示UpdateProgress控件的DOM元素。在endRequest事件处理程序中,您可以隐藏它。

您可以存储回叫的开始日期和时间,并在请求结束时检查此值。