簡體   English   中英

C#WebBrowser禁用並隱藏滾動條

[英]C# WebBrowser disable and hide scrollbar

我的FormWebBrowser控件。 並且我允許JavaScript以C#形式調用方法:

[ComVisible(true)]
public class ScriptManager
{
            // Variable to store the form of type Form1.
        private Form1 mForm;

        // Constructor.
        public ScriptManager(Form1 form)
        {
            // Save the form so it can be referenced later.
            mForm = form;
        }

        // This method can be called from JavaScript.
        public void EnterFullScreenMode()
        {
            // Call a method on the form.
            mForm.EnterFullScreenMode();
        }

      }

並且在形式上,我包括此方法:

public void EnterFullScreenMode()
{
    browser.ScrollBarsEnabled = false;
}

而且我注意到,當我調用此方法來刪除WebBrowser的滾動條時,頁面將刷新並且滾動條仍然存在。 知道是什么問題嗎? 還有其他隱藏和禁用scrolllbar的方法嗎?

在內部,通過IDocHostUIHandler :: GetHostInfo將 browser.ScrollBarsEnabled設置為DOCHOSTUIFLAG_SCROLL_NO標志。 WebBrowser對象必須重新加載文檔以獲取新值。

我建議您在表單中的InitializeComponent()之后,將browser.ScrollBarsEnabled一次設置為false ,然后使用CSS控制滾動: <body style="overflow: auto">...</body>將使滾動條自動運行,和style="overflow: hidden"將使它們消失。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM