У меня Windows Form
, которая содержит WebBrowser
для отображения веб-страниц. Всякий раз, когда пользователь нажимает вне Form
, запускается событие Form
"Deactivate
", которое я обрабатываю, вызывая Form.Close()
, чтобы иметь поведение закрытия Form
всякий раз, когда пользователь щелкает снаружи.
Это прекрасно работает для некоторых веб-страниц, но, к сожалению, другие веб-страницы иногда содержат HTML TextBox
, который имеет свойство "autocomplete
", установленное на true
. Всякий раз, когда пользователь начинает вводить текст на веб-странице (в компоненте WebBrowser), TextBox
начинает предлагать тексты для пользователя.
Основная проблема заключается в том, что когда пользователь щелкает любой текст из предложений, запускается событие «Deactivate
» формы !!! Таким образом, Form
, к сожалению, закрывается, что является поведение я не хочу, чтобы это произошло.
Как решить эту проблему? Я хочу, чтобы Form
закрывался только при использовании щелчков вне его, а не закрывался, когда пользователь нажимал предложение автозаполнения внутри WebBrowser?
Как я могу, например, обнаружить, что событие вызвано щелчком по предложению, чтобы я мог отменить обработчик события? Или есть другое решение для предотвращения вызова "Deactivate
" при нажатии на предложение? Или существует другое решение?
Кстати, я использую Form.Show()
, а не Form.ShowDialog()
.
Заранее спасибо