Проблема видимости дочернего элемента управления ASP.Ajax в ASP.net - PullRequest
0 голосов
/ 17 января 2011

Я хочу изменить видимость двух элементов управления изображениями asp.net (runat = "server") в начале и в конце продолжительности вызова метода. Я имею в виду, что я хочу, чтобы первое изображение отображалось, а второе оставалось скрытым до последней строки моего метода, которая, в свою очередь, делает второе изображение видимым, а первое скрывается. Я поместил область управляющего элемента в панель обновления и объявил триггеры панели обновления; Но когда я нажимаю элемент управления (который является кнопкой), изображение в конце процесса отображается правильно и вовремя, а изображение, которое должно отображаться в первой строке метода, не отображается. Я настроил свою панель обновлений для использования режима условного обновления и использовал эти строки для моего намерения:

imgLoading.Visible = true;

    ..
    rest of the process
    ..

    if (true)
    {
        imgLoading.Visible = false;
        imgSuccess.Visible = true;
    }

1 Ответ

2 голосов
/ 17 января 2011

Вы не можете переключиться на загрузку изображения с сервера, потому что все происходит в одном запросе, поэтому то, что отображается, не происходит до самого конца;он никогда не узнает, что загружаемое изображение было установлено на видимое значение true.Таким образом, вы можете использовать JavaScript.

Или, так как вы используете UpdatePanel, используйте элемент управления UpdateProgress, который отображает что-то на панели обновлений, когда происходит обновление.Этот элемент управления предназначен именно для этого.

См. Это: http://weblogs.asp.net/stoianbucovich/archive/2008/01/30/asp-net-2-0-ajax-update-panel-and-update-progress.aspx

HTH.

...