Если вы хотите, чтобы веб-сайт отображался в рабочем режиме в элементе управления WebBrowser
, вы должны изменить его агент. Вы можете сделать это с помощью этого:
webBrowser.Navigate(new Uri("http://www.google.com", null, "User-Agent: Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0)");
Этот код изменяет агента пользователя веб-браузера, чтобы у рабочего стола Internet Explorer 10.
Однако, это будет только изменить User Agent для страницы осуществлять навигацию. Когда пользователи нажимают на ссылки, пользовательский агент будет изменен. Чтобы исправить это, установите ходовом событие в WebBrowser к этому:
private void webBrowser_Navigating(object sender, WebBrowserNavigatingEventArgs e)
{
string url = e.Uri.ToString();
if (!url.Contains("#changedua"))
{
e.Cancel = true;
url = url + "#changedua";
webBrowser.Navigate(new Uri(url), null, "User-Agent: Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0)");
}
}
В этом коде мы проверяем, если URL содержит флаг, «#changedua». Если это так, мы разрешаем навигацию. Если это не так, мы отменим навигацию. Затем мы снова перемещаемся по нашему пользовательскому агенту пользователя и добавляем флаг, чтобы показать, что он действителен.
привет, это решение только при запуске приложения или я могу настроить веб-сервер для отправки этого заголовка, чтобы мобильный веб-браузер был настроен на режим IE10 Desktop? – Stefan