- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我试图在加载网格时在我的 GridView 顶部显示一个 div。
这是我放置 UpdateProgress、UpdatePanel 和 GridView 的方式:
<asp:UpdateProgress ID="UpdateProgress1" runat="server" AssociatedUpdatePanelID="UpdtPnlRefList" >
<ProgressTemplate>
<div style="position: fixed; text-align: center; height: 100%; width: 100%; top: 0; right: 0; left: 0; z-index: 9999999; background-color: #000000; opacity: 0.7;">
<span style="border-width: 0px; position: fixed; padding: 50px; background-color: #FFFFFF; font-size: 36px; left: 40%; top: 40%;">Loading ...</span>
</div>
</ProgressTemplate>
</asp:UpdateProgress>
<asp:UpdatePanel ID="UpdtPnlRefList" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView>
......
</asp:GridView>
...
我使用了另一个我已经忘记的问题的 ProgressTemplate 代码,但是这段代码使整个页面变灰,但我只需要使我的网格变灰。
这可能吗?
最佳答案
我过去通过使用 Ajax Control Toolkit 实现了这一点的 UpdatePanelAnimationExtender 控件。
<ajaxToolkit:UpdatePanelAnimationExtender ID="UpdatePanelAnimationExtender1" runat="server" TargetControlID="YourUpdatePanel">
<Animations>
<OnUpdating>
<Sequence>
<ScriptAction Script="UpdatePanel_OnUpdating(updatePanelClientID, divToOverlayClientID);" />
<Parallel duration="0">
<FadeOut minimumOpacity=".5" />
</Parallel>
</Sequence>
</OnUpdating>
<OnUpdated>
<Sequence>
<Parallel duration="0" >
<FadeIn minimumOpacity=".5" />
<ScriptAction Script="UpdatePanel_OnUpdated(divToOverlayClientID);" />
</Parallel>
</Sequence>
</OnUpdated>
</Animations>
确保在加载时设置两个必需的 ClientID,如下所示:
<script type="text/javascript">
var updatePanelClientID = '<%=YourUpdatePanel.ClientID %>';
var divToOverlayClientID = '<%=divUpdateProgress.ClientID %>';
</script>
我的 div 包括这个:
<div id="divUpdateProgress" runat="server" align="center" style="display: none; height: 40px; width: 200px; text-align: center; vertical-align: middle;">
<asp:Image ID="imgProgress" runat="server" ImageUrl="~/images/common/waitspin.gif" />
</div>
拼图的最后一 block 是由 UpdatePanelAnimationExtender 调用的一对 JS 函数。它们看起来像这样:
function UpdatePanel_OnUpdating(updatePanelClientID, divClientID) {
// Displays a div over an updating UpdatePanel
// Get the update progress div
var divUpdateProgress = $get(divClientID);
// Make it visible
divUpdateProgress.style.display = '';
// Get the UpdatePanel element
var pnlUpdatePanel = $get(updatePanelClientID);
// Get the bounds of both the UpdatePanel and the progress div
var pnlUpdatePanelBounds = Sys.UI.DomElement.getBounds(pnlUpdatePanel);
var divUpdateProgressBounds = Sys.UI.DomElement.getBounds(divUpdateProgress);
// Work out where to position the element (the centre of the UpdatePanel)
var x = pnlUpdatePanelBounds.x + Math.round(pnlUpdatePanelBounds.width / 2) - Math.round(divUpdateProgressBounds.width / 2);
var y = pnlUpdatePanelBounds.y + Math.round(pnlUpdatePanelBounds.height / 2) - Math.round(divUpdateProgressBounds.height / 2);
// Set the progress element to this position
Sys.UI.DomElement.setLocation(divUpdateProgress, x, y);
}
function UpdatePanel_OnUpdated(divClientID) {
// Related to UpdatePanel_OnUpdating, above. Hides the div once the UpdatePanel has been updated
$get(divClientID).style.display = 'none';
}
这段代码最初是大约 10 年前写的,但我刚刚在遗留元素中成功地重用了它。
关于css - UpdateProgress div定位,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31501267/
我有一个 UpdateProgress 控件,它显示为更新面板的所有异步事件的覆盖层(使用 CSS)。现在,对于某些 EXPAND/COLLAPSE 行命令事件,我只是不想显示更新进度。 有办法吗?
我已经检查了这个解决方案:Is there a way to disable UpdateProgress for certain async postbacks? 但这会完全禁止我的控件加载! 我的
我试图在加载网格时在我的 GridView 顶部显示一个 div。 这是我放置 UpdateProgress、UpdatePanel 和 GridView 的方式:
我正在尝试使用更新面板内的 asp.net 文件上传控件上传图像文件。我想处理 UpdateProgress 以显示指示进度的进度条图像以及文件上传。 案例 1: 当我删除触发器部分并使用 Updat
我正在尝试禁用页面元素并在我的应用程序中显示更新进度控件。为了让它工作,我应用了带有属性的样式表 过滤器:alpha(不透明度=85); 但它显示错误“filter is not a known CS
我正在尝试将 UpdateProgress 与触发器一起使用(请参阅下面的代码)但是当单击分配为 asyncPostBackTrigger 的按钮时,UpdateProgress 不起作用。如果我删除
我有一个带有 ListView 的 ASP.NET 应用程序。我从 Active Directory 获取数据,现在如果 ListVew 正在构建,我需要一个等待符号。我想我会使用 Ajax 控件工具
我的 ASP.NET 页面上有一个按钮,它从我的数据库中获取一些数据并将其显示在 GridView 上。 这个过程需要一段时间,所以我想我会添加一个 updateprogress AJAX 控件。现在
我正在使用 Ajax UpdateProgress 控件。虽然它按我预期的那样工作,但我希望它出现在页面的中心。我怎么做
我的 UpdateProgress 在 UpdatePanel 之外,我已经尝试了以下方法 添加了 JavaScript,在母版页中添加了“AsyncPostBackTimeout=3600” 在 P
当您设置或更新 progressView 的 float 时,它会自动更新 progressView 吗? 比如调用一个方法: - (void) updateProgress:(float)progr
我正在创建一个 ASPP.Net 网页。因为它必须加载大量的日期,最多可能需要 60 秒,所以我想通知用户这可能需要一段时间。我想将整个屏幕调暗一点并写上“正在加载,请稍等”。为此,我在 中创建了一
我有一个订单输入页面可能需要一些时间来处理,用户认为浏览器已卡住并关闭它。这是一个弹出式浏览器,当单击 cmdAdd 按钮时,文本框中的项目被写入数据库,子窗口关闭,父窗口刷新以查看更改。这目前工作正
我在 Asp.net 中使用更新面板。我有更新进度,为此我设置了一个 DIV 并为其设置了一个 CSS。问题是当我调用它时,它会显示进度条,但我可以滚动窗口。我需要将其设置为模式(显示进度条时无法选择
这只是一个测试页面,所以我可以看到工作指示器的样子,但是该死的 UpdateProgress 根本没有显示... 测试只是构建一个对象列表并填充列表框,而列表框中的项目少于 100 个。
每当我的更新面板执行 Ajax 操作时,我都会尝试显示更新进度加载图像。我环顾四周,看起来很简单,但我没有运气。这几乎是我所拥有的......
我有一个使用 ASP.NET 开发的网站。那里发生了很多 ajax 请求。所以我想在发生ajax请求时显示图像并在加载数据后隐藏图像。现在一切正常, 这是我到目前为止所做的
我在下面有这个简单的代码,它在 updateProgress 期间更新 TextArea: textArea = new TextArea(); textArea.setEditable(false)
问题:为什么我的 UpdateProgress 在初始页面加载期间不显示,但在通过按钮单击进行的后续回发中显示? 我成功实现此功能的唯一方法是使用计时器,但我并不热衷于计时器。还有别的办法吗? 有人可
我是一名优秀的程序员,十分优秀!