在运行时加载gridview时加载图像

时间:2011-11-27 10:34:49

标签: asp.net gridview

我正在寻找解决我问题的解决方案两天,但我找不到任何有用的方法。我有两页:第1页和第2页 Page1包含将发送到page2的参数和一个“Create”按钮 第2页包含GridViewpage_load我有

GetParameters() ;   // extract parameters
PrepareParameters(); // prepare local variable 
DataTable dt = CreateDataTable(); // create the BoundField/Columns based on prepared local variables
myGridView.DataSource = dt;
myGridView.DataBind();

我的问题是方法PrepareParameters()由于大量数据而需要时间,即使它已经过优化。当我点击“创建”按钮时,浏览器不会移动到第2页,而是不响应并保留在第1页,用户不知道发生了什么。 所以我想知道如何将浏览器重定向到page2并在网格上向用户显示加载动画,直到PrepareParameters()完成处理数据并显示GridView一旦完成? 谢谢你的回复。

1 个答案:

答案 0 :(得分:0)

您可以使用Javascript来执行此操作。获取您喜欢的任何加载程序图像,网上有许多可用的google it

将此图像放在网格的顶部/底部,为其指定一些ID并设置默认属性Visible = false。 现在点击按钮点击调用javascript,你可以看到这个图像。

示例代码

    <html>
<head>
<script type="text/javascript" language="JavaScript">

function Loading() {
  document.getelemanebyId('Img').visibility = visible;
} 
</script>
</head>
<body>

<form action="" method="POST" id="myForm">

//Gridview control here
<img id="Img" src="give image file path" runat="server" visible="false"/>
<button name="Create" onClientClick="Loading();" runat="server" >

</form>
</body>
</html>