Спасибо за пример кода для замены элемента управления изображением в AsyncWait. Это работало абсолютно нормально, пока я не обновил свой элемент управления средством просмотра отчетов до последней версии, то есть версии 15.0.0.0.
После обновления элемент управления в позиции "c.Controls [0] .Controls [0]", как в примере кода из @Pratik, больше не является элементом управления изображением. Следовательно, он выдает ошибку о том, что не может преобразовать LiteralControl в изображение.
Я попытался использовать приведенный выше код с некоторыми незначительными правками, как показано ниже:
protected void CustomizeRV(Control ReportViewCntr)
{
foreach (Control c in ReportViewCntr.Controls)
{
if ((string.Compare(c.ID, "AsyncWait") == 0))
{
c.Controls[0].Controls.RemoveAt(0);
Image i = new Image();
i.ImageUrl = ResolveUrl("~/images/loading.gif");
//i.BackColor = System.Drawing.Color.Gray;
i.BackColor = System.Drawing.ColorTranslator.FromHtml("#e6e6e6");
c.Controls[0].Controls.AddAt(0, i);
}
if (c.HasControls())
{
CustomizeRV(c);
}
}
}
Однако, это не сработало, как ожидалось.
Есть ли другой способ заменить новый буквенный элемент управления изображением gif?