Добрый день.
Имеется WebBrowser из .Net 2.0. Нужно при получении страниц с определённым содержимым скрывать его и выводить на передний план свой контрол. Рассматривается вариант с обработкой события получения страницы. Я вижу 2 подходящих события: Navigated и DocumentCompleted. Но с обоими есть проблемы. При срабатывании Navigated DOM страницы ещё не доступна, поэтому нужное условие не проверить. А на DocumentCompleted страница уже показана пользователю, поэтому получается мигание — пришедшая страница видна доли секунды, пока я скрываю WebBrowser.
Есть какое-нибудь промежуточное событие, на котором DOM уже доступна, а сама страница ещё не отрисована? В MSDN я подходящего не нашёл.
И вообще, может есть другие варианты решения задачи?
Здравствуйте, TK, Вы писали:
TK>А что мешает показывать свой контрол поверх WebBrowser и по DocumentComplete скрывать именно его?
Это получится телега впереди лошади. Главный контрол — WebBrowser. Он должен быть всегда открыт и показывать пользователю пришедшие страницы. "Всегда" означает "всегда за исключением небольшого числа служебных страниц, которые пользователь видеть не должен".
Я правильно понял, что предлагается скрывать WebBrowser и выводить свой контрол на передний план при каждом переходе между страницами и если в ходе перехода пришла не служебная страница, то показывать WebBrowser снова? Если да, то такой вариант не подойдёт.