我在updatepanel内部有一个向导控件。某些向导步骤需要几秒钟才能显示,因此我想在加载时显示updateprogress控件。这是行得通的,但我想在每个wizardstep之间的progresstemplate中显示不同的图像(从文件夹中选择的随机图像)。UpdateProgress中的随机图像
我能够访问图像控件并更改ImageUrl,但progresstemplate从不更新。它保留从第一次加载时选择的第一个随机图像。
我已经尝试更新PageLoad上的imageUrl并重写Render()方法,但都不起作用。
<asp:UpdateProgress ID="UpdateProgress1" runat="server" DisplayAfter="500" >
<ProgressTemplate>
<div class="modalWrapper">
<div class="updateProgress">
<asp:Image ID="imgLoading" runat="server" AlternateText="Loading..." />
</div>
</div>
</ProgressTemplate>
</asp:UpdateProgress>
在代码隐藏:
protected void Page_Load(object sender, EventArgs e)
{
System.Web.UI.WebControls.Image img = (System.Web.UI.WebControls.Image)UpdateProgress1.FindControl("imgLoading");
if (img != null)
img.ImageUrl = PickImageFromDirectory("~/images/loaders/"); //returns "~/images/loaders/randomimage.gif"
}
也尝试:
protected override void Render(HtmlTextWriter writer)
{
System.Web.UI.WebControls.Image img = (System.Web.UI.WebControls.Image)UpdateProgress1.FindControl("imgLoading");
if (img != null)
img.ImageUrl = PickImageFromDirectory("~/images/loaders/"); //returns "~/images/loaders/randomimage.gif"
base.Render(writer);
}
谢谢。很棒。 – MrMagoo 2010-02-25 16:15:38