2017-03-21 50 views
0

我正在使用wpf webBrowser控件。 loadComplete事件不會觸發。我查看了我正在導航的頁面,發現它有一些js錯誤。我假設這是原因。任何人都可以找出解決方法嗎?我需要事件發生。wpf webBrowser沒有發射loadCompleted頁面上有js錯誤

感謝

+0

WebBrowser控件默認爲IE 7渲染模式。您可能需要在HTML頂部使用正確的DOCTYPE,或使用IE 11渲染模式爲您的.exe更新註冊表。在這裏看到我的答案:http://stackoverflow.com/questions/41144328/integration-of-vimeos-video-in-wpf/41146080#41146080 – jschroedl

+1

我已經編輯了註冊表值在這裏爲我需要的其他功能......但並沒有阻止這一點。 我無法更改DOCTYPE,它的導航到我無法控制的URL。即使當我使用chrome訪問URL時,在開發人員工具中,我看到一些js錯誤 –

+0

嗯,我查看了我的代碼,並且正在處理Navigated事件,而不是loadComplete,因此我可能不再有想法。我確實有類似於接受的答案的代碼來抑制腳本錯誤,但它可能只隱藏我們可以看到的彈出消息:http://stackoverflow.com/questions/6138199/wpf-webbrowser-control-how-to-supress-腳本錯誤 – jschroedl

回答

0

這是什麼導致我的問題:前一陣子

A,我加入這個代碼,以防止安全文件的消息(見IE10 - how to prevent "Your current security settings do not allow this file to be downloaded" popup from appearing?) ,這就是從發射

阻止事件
this.WB.Loaded += (s, e) => 
      { 
       // get the underlying WebBrowser ActiveX object; 
       // this code depends on SHDocVw.dll COM interop assembly, 
       // generate SHDocVw.dll: "tlbimp.exe ieframe.dll", 
       // and add as a reference to the project 

       var activeX = this.WB.GetType().InvokeMember("ActiveXInstance", 
        BindingFlags.GetProperty | BindingFlags.Instance | BindingFlags.NonPublic, 
        null, this.WB, new object[] { }) as SHDocVw.WebBrowser; 

       // now we can handle previously inaccessible WB events 
       activeX.FileDownload += activeX_FileDownload; 
      }; 
+0

但實際上 - 現在我有一個不同的問題,事件在它準備好之前發射。有人可以幫忙嗎? –