这是 ASP.Net UpdatePanel 的 UpdateProgress 的典型行为吗?我在页面上的用户控件窗口内有一个带有 UpdateProgress 控件的更新面板。
如果我然后让页面在后台进行一些加载并单击用户控制更新面板中的按钮,则 UpdateProgress 根本不会显示。这就像 UpdatePanels 刷新请求甚至在实际页面完成后才注册。值得注意的是,如果后台没有任何事情发生,它会显示出来。
我想要的功能是你所期望的。如果在单击按钮后必须等待任何事情来完成刷新,我想加载程序显示出来。
我知道如果我只是将 jquery ajax 与静态 web 方法一起使用,我可以获得这个功能,但是你不能在用户控件中使用静态 web 方法。我可以将它放在页面中,但它确实不属于那里。在这种情况下,一个成熟的 wcf 也不值得。我试图与 UpdatePanel 妥协,但这些事情似乎总是给我带来一些麻烦。
也许这就是它的工作方式?
编辑:所以我会澄清一下我在做什么。
发生的事情是我有一个页面,上面只有一些工具和一张大地图。当页面最初加载时,加载地图需要一些时间。现在,如果在加载时我打开包含有问题的更新面板的工具(用户控件),然后单击此用户控件上的按钮,该按钮应该用新数据刷新更新面板并显示加载标志(在 updateprogress ) 然后 UpdateProgress 加载图像不显示。但是,通过按钮单击运行的代码确实会在页面加载完成后运行(如预期的那样),如果包含用户控件的页面上没有任何内容正在加载,则 UpdateProgress 将显示。
我只想在页面加载时显示加载器。
我认为我的问题是地图加载可能在更新面板中,而我的 UpdateProgress 仅与用户控件更新面板的更新面板相关联。因此,在加载地图时我不会看到加载图标。但事实并非如此。