WPF WebBrowser Тихий режим через интерфейс IWebBrowser2 не работает? - PullRequest
1 голос
/ 18 декабря 2009

Я пытаюсь заставить замолчать ошибки Javascript в элементе управления веб-браузера WPF. Согласно комментарию «Получение к IWebBrowser2» на этой странице , можно получить доступ к интерфейсу IWebBrowser2. Оттуда я подумал, что могу установить для свойства Silent значение true, например:

    /// <summary>
    /// Handle navigation events
    /// </summary>
    protected virtual void OnNavigated(object sender, NavigationEventArgs e)
    {
        MakeComBrowserSilent();
    }

    private void MakeComBrowserSilent()
    {
        IServiceProvider serviceProvider = (IServiceProvider)_webViewer.Browser.Document;
        Guid serviceGuid = SID_SWebBrowserApp;
        Guid iid = typeof(SHDocVw.IWebBrowser2).GUID;
        SHDocVw.IWebBrowser2 comBrowser = (SHDocVw.IWebBrowser2)serviceProvider.QueryService(ref serviceGuid, ref iid);
        comBrowser.Silent = true;
        //comBrowser.PutProperty("Silent", true);
    }

Я пробовал Silent = true, а также PutProperty. Ни одна из них не работает, и я все еще получаю ошибки Javascript.

Кто-нибудь знает, как отключить ошибки отладки Javascript в элементе управления WPF WebBrowser?

ТИА.

Ответы [ 2 ]

1 голос
/ 18 декабря 2009

Класс браузера WPF не имеет API для прямого доступа к интерфейсу IWebBrowser, вы должны получить его через документ, но к тому моменту, когда документ готов к доступу, уже слишком поздно. Взаимодействовать с окнами или использовать классы-оболочки ActiveX / ActiveX ilke csexwb.

0 голосов
/ 01 января 2012

Я нашел эту статью, которая описывает, как именно вы можете заставить ее подавлять ошибки скрипта

ошибки сценария подавления

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...