Открыть ссылку в элементе управления webBrowser во внешнем браузере?

1

Я хочу, чтобы ссылки в моем элементе управления Webbrowser открывались в браузере по умолчанию, а не в элементе управления Windows.

Точная же проблема была решена в приведенной ниже ссылке, и я последовал тому же решению перехватить навигационное событие и отменить его.

Как открыть ссылку в элементе управления webBrowser во внешнем браузере?

Но когда я реализую решение, он отлично работает, когда Chrome является браузером по умолчанию. Когда IE (Вер. 10) является браузером по умолчанию, щелчок по ссылке открывает URL-адрес в том же элементе управления веб-браузером. Есть идеи?

  • 0
    Вы можете написать собственный код совместимости браузера, чтобы проверить, из какого браузера он запускается или вызывается ...?
  • 0
    Извините, если я не получил предложение .. Но ссылка запускается из элемента управления Webbrowser и, если Chrome является браузером по умолчанию, он загружается в Chrome.
Теги:
winforms
internet-explorer
webbrowser-control

1 ответ

1
Лучший ответ

Process.Start "Запускает (или повторно использует) ресурс процесса, который задается свойством StartInfo этого компонента Process и связывает его с компонентом".

Я подозреваю, что, поскольку элемент управления WebBrowser на самом деле является обойденным браузером IE, использование Process.Start повторно использует элемент управления WebBrowser, а не запускает новый экземпляр iexplore.exe.

Возможно, вам понадобится, чтобы ваш код проверил реестр, чтобы узнать, что такое браузер по умолчанию для пользователя (ключ реестра Windows для "проверить, является ли IE браузером по умолчанию"?). Если вы обнаружите, что браузер по умолчанию установлен в IE, измените метод Process.Start на явный запуск iexplore.exe

Process.Start("iexplore.exe",e.Url.ToString());
  • 1
    Да. Проблема заключалась в том, что не был выбран браузер по умолчанию. Я также хотел бы добавить, что если установлен Chrome, даже если браузер по умолчанию не выбран, будет использоваться Chrome, и ссылка откроется в Chrome. Если chrome не установлен, нам нужно явно сделать IE браузером по умолчанию, чтобы ссылки открывались в IE.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню