显示使用c#代码加载图像
本文关键字:加载 图像 代码 显示 | 更新日期: 2023-09-27 18:20:25
我正在开发一个web应用程序,当我的代码创建一个xml文件并下载它时,我想显示一个加载图像(繁忙指示符)。我想在div中显示图像。我应该只使用c#代码,而不是更新面板或jquery ajax技术。我的代码看起来像:
protected void lb_DownloadXML_Click(object sender, EventArgs e)
{
this.imgLoading.Visible = true;
//all my code
this.imgLoading.Visible = false;
}
我的图像是
<img src="Images/loading_big.gif" width="50" height="40" runat="server" id="imgLoading"
visible="false" />
但它不起作用。有人能解释我怎样才能完成这项任务吗。
提前谢谢。
要从客户端机器执行服务器端代码,除了UpdatePanel
或Ajax
,没有其他方式。客户端请求应该到达服务器以执行请求。发生这种情况的方式是通过PostBack或Get请求。若你们并没有使用UpdatePanel
(我想你们不想要),PostBack
会重新加载页面,第二个是GET,你们也不想要。
更新
根据@Lloyd
是的,您可以将"Response.BufferOutput"属性设置为false,直接写入Response.Output并刷新流,从而按顺序向页面呈现内容。
您应该清楚,当您在服务器端编写任何代码时,它只会在成功回发后反映在broswer中。在这里,如果您编写C#代码来显示进度图像,那么它将仅在回发成功后显示,也就是说,在创建XML文件并将其下载到客户端之后,或者在成功执行lb_DownloadXML_Click()之后。
因此,使用C#服务器端代码无法实现这一点,必须依靠客户端编程才能实现。