2009-12-18 22 views
1

我正在嘗試在WPF webbrowser控件中使Javascript失敗。根據page上的「獲取本機IWebBrowser2」評論,可以訪問IWebBrowser2界面。從那裏,我以爲我可以在無聲屬性設置爲true,像這樣:WPF WebBrowser通過IWebBrowser2界面無法工作的靜默模式?

/// <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); 
    } 

我已經試過了沉默=真,也PutProperty。這兩個都不工作,我仍然彈出Javascript錯誤。

任何人都知道如何在WPF WebBrowser控件中靜音Javascript調試錯誤?

TIA。

+0

這裏看一看這個答案上,這樣可能會有所幫助:http://stackoverflow.com/questions/ 6138199/WPF的網頁瀏覽器 - 控制 - 如何對剿 - 腳本錯誤/ – 2012-02-17 15:54:32

回答

1

WPF瀏覽器類沒有API直接訪問IWebBrowser接口,您必須通過文檔獲取它,但在文檔準備好訪問時,已經太晚了。互操作窗口窗體或使用ActiveX/ActiveX包裝類ilke csexwb。