.Net Windows Forms - Ограничение навигации по формам при ожидании асинхронной работы. - PullRequest
1 голос
/ 21 мая 2009

При нажатии кнопки запрос выполняется в фоновом режиме. Он асинхронный, поэтому я могу изменить кнопку «Отмена», чтобы пользователь мог отменить процесс, если он выполняется дольше, чем ожидалось. Это все отлично работает.

Но я не хочу, чтобы пользователь мог перемещаться из этого места, чтобы выполнять другие действия в форме. Они должны иметь возможность нажать кнопку «Отмена» или закрыть форму, но не более того.

Ответы [ 2 ]

6 голосов
/ 21 мая 2009

Затем я предлагаю вам отключить другие элементы управления в форме, когда вы начнете обрабатывать свой запрос, а когда фоновый работник завершит работу, снова включите их.

1 голос
/ 21 мая 2009

лучший способ сделать это - создать метод, такой как DisableControls (), который содержит команды отключения для всех других элементов управления.

Когда асинхронная работа завершена, при обратном вызове вызовите метод, такой как EnableControls (), чтобы обратить процесс вспять.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...