Управление веб-браузером WinForms:Принудительно открывайте все ссылки извне в новом окне (IE)
-
03-07-2019 - |
Вопрос
Я думаю, что название охватывает все это.Я использую элемент управления для отображения некоторого базового HTML-кода с некоторыми пометками, и, возможно, там также есть ссылки.Что я хочу сделать, так это принудительно щелкнуть по любой ссылке, чтобы открыть эту ссылку в новом окне IE вместо перехода на эту страницу в самом элементе управления.
Есть какие-нибудь идеи?
Решение
Вы можете обработать событие навигации, установить свойству Cancel WebBrowserNavigatingEventArgs значение true и использовать Process .Начните открывать URL-адрес в IE.
Что - то вроде этого:
private void webBrowser1_Navigating(object sender, WebBrowserNavigatingEventArgs e)
{
// prevents WebBrowser to navigate
if (e.Url.Host.Length > 0) // Otherwise the default about:blank when you init the control doesn't work
{
e.Cancel = true;
// Open the URL in an IE window
System.Diagnostics.Process process = new System.Diagnostics.Process();
process.StartInfo.FileName = e.Url.ToString();
process.Start();
}
}
Не связан с StackOverflow