Элемент управления WebBrowser считается «используемым», если в данный момент выполняется действие навигации или открыто какое-либо диалоговое окно блокировки из элемента управления (включая контекстное меню, предупреждения Javascript, диалоговое окно входа в NTLM и т. Д.).Вы можете использовать свойство WebBrowser.IsBusy
для определения этих состояний.
Если из-за незавершенного в данный момент действия навигации вы можете попытаться остановить текущую навигацию (если вы действительно хотите остановить, когда страница не завершена загружена) или добавьте новую навигацию в очередь запросов и используйте таймер, чтобы дождаться, пока WebBrowser.IsBusy
вернет false.
Если вместо этого состояние занятости связано с одним или несколькими открытыми диалоговыми окнами блокировки, вы можете сделать то же самое ожиданиетехника и, возможно, Messagebox.Show()
пользователю сообщение о том, что ожидающая навигация задерживается из-за открытого диалогового окна.