2010-08-30 133 views
6

我們正在研究一個帶有Web瀏覽器控件的WPF應用程序。當用戶拖動窗口時,網頁瀏覽器在拖動時滯後於窗口。WPF中WebBrowser控件的替代方案?

有誰知道如何解決這個問題?否則,有沒有人知道一個替代網頁瀏覽器控制本身?

謝謝!

回答

4

是的,只要你不需要IE特定的功能,你可以使用Awesomium,它基本上提供了谷歌瀏覽器使用的相同瀏覽器引擎,除了一切都以純WPF呈現。有一段時間它是開源的,但我相信它正在成爲一種商業產品。

1

我還沒有聽說過任何本機WPF WebBrowser控件。我知道的唯一選項是基於Win32控件,它們被包裝到WPF控件中以便顯示。 (在http://msdn.microsoft.com/en-us/library/ms752055.aspx查看更多詳細信息)

最近,我必須使用WebBrowser控件的WPF包裝器,並且它對於開發人員可用的選項非常有限。在我的研究中,我發現您可以注入腳本或html內容以修改頁面行爲。此外,您可以調用.NET代碼(例如,Javascript中的CSharp函數)。

然而,諸如訪問緩存,修改cookie等任務是一項艱鉅的任務,或者改變Web瀏覽器的行爲非常困難。這是當你將不得不使用DLL的進口,以調用非託管程序(見http://msdn.microsoft.com/en-us/library/aa984739(v=vs.71).aspx

有可能尋找一個替代WebBrowser控件,如:

http://code.google.com/p/csexwb2/

http://wpfchromium.codeplex.com/

我希望這可以幫助

0

您可以嘗試使用Chromium作爲基本瀏覽器的CefSharp.Wpf。你可以在NuGet上找到它