在IE9模式下,WebBrowser中的不需要的滚动条控制

Uwe*_*eim 6 c# internet-explorer editmode webbrowser-control winforms

在编辑模式下使用WinForms WebBrowser控件(如此处所述),当将控件切换到" IE9模式 " 时,我遇到了不必要的滚动条.

我正在使用元标记

<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
Run Code Online (Sandbox Code Playgroud)

如在描述此过帐切换到编辑模式.

这是在"IE9模式"下的样子:

在此输入图像描述

相比之下,在没有上述元标记的情况下使用它时,它看起来像这样:

在此输入图像描述

在这里,它看起来像预期; 根本不存在水平滚动条,垂直滚动条不活动.

我试过了我能想到的每一个DOCTYPE; 结果似乎保持不变.

(如果重要:正在切换到编辑模式的内容来自我的应用程序的内置迷你网络服务器的本地HTTP URL,即不是来自字符串或来自文件URL).

我的问题是:

有没有办法WebBrowser在"IE9编辑模式"中使用IE9控件,并且只在必要时仍然有滚动条?

Ric*_*ahl 6

Web浏览器控件中的滚动条由文档滚动设置决定,您可以使用overFlow样式将其关闭.

以下代码可以防止出现任何滚动条:

    private void button1_Click(object sender, EventArgs e)
    {
        dynamic doc = this.Browser.Document.DomDocument;
        dynamic body = this.Browser.Document.Body;
        body.DomElement.contentEditable = true;

        doc.documentElement.style.overflow = "hidden";
    }
Run Code Online (Sandbox Code Playgroud)