2014-09-12 54 views
0

我正在開發Compact Framework 2.5的Windows CE應用程序。如何在WebBrowser控件中滾動瀏覽網頁?

我開發的應用程序基本上是一個WebControl。客戶希望隱藏scollbars(我已經管理),但仍然希望能夠使用PDA上的箭頭鍵滾動瀏覽已加載的網頁。然而,我無法找到一種方法來控制WebBrowser目前的文檔?

有沒有人有任何想法?或者是WebBrowser控件的一個可能替代方案,因爲我認爲考慮到完整的框架,精簡框架中的實現非常差。

預先感謝您。

回答

0

這是一個Windows CE或Windows Mobile設備?

對於windows mobile來說,自AKU 6.1.4開始提供兩種渲染引擎:'舊'PIE和新IE6'兼容'引擎(http://www.hjgode.de/wp/2013/11/04/windows-mobile-6-internet-explorer-mobile-modes/)。註冊表項HKLM/security/internet explorer/mshtml值控制「Internet Explorer Mobile」(iexplore.exe)使用的渲染引擎。 PIE引擎默認顯示滾動條,IE6不是,它可以通過導航鍵進行導航。存在用於緊湊架構校正導航鍵的使用一個修復:http://support.microsoft.com/kb/975281

如果這是一個真正的Windows CE設備:如果是在Windows CE 5基於設備則有在C/C使用web瀏覽器控件的實例++稱爲iesimple等(AFAIR)。 Comapct Framework僅實現了webbrowser API的一部分。

這聽起來像你正在試圖寫另一個kiosk模式瀏覽器,雖然已經有很多了。有些設備製造商依賴於Intermec Browser,有些設備可以在通用的Windows Mobile設備上使用,例如Naurtech Browser(http://www.naurtech.com/products_em.php)。這些瀏覽器支持一系列選項來控制信息亭模式和使用情況。我只會爲簡單的使用場景編寫我自己的信息亭模式瀏覽器。

AFAIK無法從程序代碼中知道網頁的哪一部分顯示給用戶。對於我來說,讓程序知道當前呈現給屏幕的內容是毫無意義的。 html和javascript代碼控制工作流和數據顯示和更改。

也許還有其他人,但唯一支持MS瀏覽器控件旁的SDK的html引擎是ZetaKey。有Webkit引擎可用於Windows CE/Mobile,他們提供了一個SDK(我不知道那裏的許可和定價模式)。一些開源舉措已經停止,例如MiniMo(Mozilla/Firefox)。

如果您需要進一步的幫助,請讓我們知道更多關於設備的信息,以及您打算編寫自己的信息亭模式瀏覽器的意圖。

+1

謝謝你的詳細解答。我設法找出一種控制滾動的方式,而不必查看另一個瀏覽器。我用'webBrowser.Navigate(「javascript:window.scrollBy(0,15)」);'導致滾動。但是,謝謝你的幫助:=。 – FirstHorizon 2014-09-15 08:22:47

+0

當你讓人們考慮他們在做什麼時,他們經常會看到他們所查詢的東西的替代方案。 – josef 2014-09-15 16:53:45