2012-10-04 45 views
1

我在我的Windows應用程序中使用網絡瀏覽器控件。我想改變滾動條的外觀和感覺。爲此,我找到了下面給出的代碼項目的鏈接。 這似乎比較麻煩。所以,而不是有沒有其他方式來定製滾動條。我想設計滾動條沒有上下箭頭。只是滾動。我無法通過此代碼來完成此操作。否則我可以更改默認的滾動條,即顏色寬度的外觀和感覺等更改網頁瀏覽器的顏色控制滾動條

+0

對不起鏈接缺失的問題: http://www.codeproject.com/Articles/14801/How-to-skin-scrollbars-for-Panels-in-C –

+1

你不能注入一些CSS代碼進入加載頁面?實際上,我相信滾動條不是由控件本身擁有,而是由控件內的網頁擁有。 –

+0

@Steve B - 其實我正在使用Windows窗體,並以這種形式添加了Web瀏覽器控件。我們可以在Windows窗體中使用CSS嗎?我不知道。如果是,請告訴我該怎麼做。謝謝! –

回答

1

您可以使用IHTMLDocument2.styleSheets設置樣式:

IHTMLDocument2 _htmlDocument = webBrowser.Document.DomDocument as IHTMLDocument2; 
int length = _htmlDocument.styleSheets.length; 
IHTMLStyleSheet styleSheet = _htmlDocument.createStyleSheet(@"", length + 1); 
styleSheet.addRule("BODY", "scrollbar-face-color: #FF0000;"); 
styleSheet.addRule("BODY", "scrollbar-highlight-color: #FF00FF;"); 
styleSheet.addRule... 

,或者你可以直接在HTML代碼中設置CSS

CSS:

<STYLE type="text/css"> 
<!-- 
BODY 
{ 
scrollbar-face-color: #FF0000; 
scrollbar-highlight-color: #FF00FF; 
scrollbar-3dlight-color: #00FF00; 
scrollbar-darkshadow-color: #00FFFF; 
scrollbar-shadow-color: #0000FF; 
scrollbar-arrow-color: #FF00FF; 
scrollbar-track-color: #FFFF00; 
} 
--> 
</STYLE> 

,並在您C#代碼設置WebBrowser.DocumentText屬性:

webBrowser.DocumentText = "<html><head><STYLE type=\"text/css\"><!--BODY{scrollbar-face-color: #FF0000;scrollbar-highlight-color: #FF00FF;scrollbar-3dlight-color: #00FF00;scrollbar-darkshadow-color: #00FFFF;scrollbar-shadow-color: #0000FF;scrollbar-arrow-color: #FF00FF;scrollbar-track-color: #FFFF00;}--></STYLE></head><body>aaaa</body></html>"; 

需要注意的是:你只能看到彩色滾動條,如果你運行IE 5.5。

+0

謝謝.. !!!它的作品..! –

+0

我可以減少滾動條的寬度嗎?如果是,請告訴我。 謝謝.. !!! –