我正在使用WPF WebBrowser組件顯示一些非常簡單的HTML內容。但是,由於我不知道內容大小,因此當我加載某些數據集時,我正在控制滾動條。阻止使用WPF WebBrowser顯示內容的滾動條
基本上,我該如何強制(或以其他方式影響等同於強制)WebBrowser的大小擴大,以便所有內容都顯示出來而不需要滾動條?
我正在使用WPF WebBrowser組件顯示一些非常簡單的HTML內容。但是,由於我不知道內容大小,因此當我加載某些數據集時,我正在控制滾動條。阻止使用WPF WebBrowser顯示內容的滾動條
基本上,我該如何強制(或以其他方式影響等同於強制)WebBrowser的大小擴大,以便所有內容都顯示出來而不需要滾動條?
我想你可以通過它的Document屬性獲得webbrowser組件內容的寬度和高度,該屬性應該是mshtml.HTMLDocument類型。我相信你應該能夠使用body或documentElement屬性來獲得所需的大小;水木清華這樣的:
mshtml.HTMLDocument htmlDoc = webBrowser.Document as mshtml.HTMLDocument;
if (htmlDoc != null && htmlDoc.body != null)
{
mshtml.IHTMLElement2 body = (mshtml.IHTMLElement2)htmlDoc.body;
webBrowser.Width = body.scrollWidth;
webBrowser.Height = body.scrollHeight;
}
希望這會有所幫助,至於
與以前的解決方案的問題在於,它改變了控制規模和因爲瀏覽器控件不能被裁減掉,總是在其他WPF元素的上面,它可能會涵蓋其他元素。
這裏是我的解決方案:
Dim body = CType(WebBrowserControl.Document, mshtml.HTMLDocumentClass)
body.documentElement.style.overflow = "hidden"
問候,
阿薩夫
它不適合我; – 2013-01-30 15:11:56
+1。聽起來不錯:) – Anvaka 2009-12-16 06:25:09
不幸的是WebBrowser.Document似乎永遠不會被設置。這可能是我加載頁面的一個副作用,我不確定。 – 2009-12-16 07:36:35
你可以發佈一些你如何加載你的網頁的代碼。 thnx – 2009-12-16 13:28:59