У меня есть мастер управления внутри панели обновления. Для некоторых шагов мастера требуется несколько секунд для отображения, поэтому я хочу показать элемент управления updateprogress во время загрузки. Это работает, но я хотел бы показать другое изображение (случайное изображение, выбранное из папки) в progresstemplate между каждым wizardstep.Случайное изображение в UpdateProgress
Я могу получить доступ к управлению изображением и изменить ImageUrl, но progresstemplate никогда не обновляется. Он сохраняет первое случайное изображение, выбранное с самого первого раза, когда оно загружается.
Я пробовал обновлять imageUrl на странице Load, а также переопределяя метод 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