Лучшее решение - признать асинхронный характер загрузки и дизайна для него.
Другими словами, решите, как должно выглядеть ваше приложение во время загрузки данных. Создайте конструктор страницы , который просмотрит, и начните загрузку. Когда загрузка завершает обновление страницы для отображения данных.
У меня есть сообщение в блоге по асинхронным конструкторам , которые могут оказаться полезными. Кроме того, некоторые статьи MSDN; один в асинхронной привязке данных (если вы используете MVVM), а другой - в асинхронных лучших практиках (т. е. вы должны избегать async void
).
Посмотрите этот пример для отключения управления на обратной передаче. Это должно помочь Вам сделать то, чего Вы пытаетесь достигнуть.
http://encosia.com/2007/04/17/disable-a-button-control-during-postback/
Вы не обязательно хотите показать кнопку, отключенную на обратной передаче. Вы хотите удостовериться, что они случайно не отправляют дважды. Так отключение или сокрытие кнопки в результате действия серверной стороны являются уже слишком поздними в игре. Этой точкой 2-й запрос уже находится на, он - путь. Необходимо или сделать это с JavaScript или удостовериться, что серверный код не будет работать дважды.
Вместо сокрытия, что я сделал, подкачивает кнопки с помощью JavaScript. Покажите, что другой greyed отображает при щелчке первой кнопки.
Кто-то еще сказал это где-нибудь относительно здесь несколько дней назад, и я соглашаюсь - используют JavaScript для простого сокрытия кнопки вместо того, чтобы отключить его; Вы могли показать изображение "счетчика" в его месте, которое сообщает пользователю, что продолжается.