WebBrowser控件在IE9模式下出现不需要的滚动条

6

使用 WinForms WebBrowser 控件 进入编辑模式时 (在此处描述),当将控件切换到“IE9 模式”时,我遇到了不必要的滚动条问题。

我正在使用 meta 标签

<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">

此帖子所述,要切换到编辑模式。

在“IE9模式”下,它看起来像这样:

enter image description here

相比之下,如果不使用上述meta标签,则会正确显示如下:

enter image description here

在这里,它看起来符合预期;水平滚动条根本不存在,垂直滚动条也不活动。

我尝试了我能想到的每个DOCTYPE;结果似乎保持不变。

(如果有影响的话:切换到编辑模式的内容来自我的应用程序内置迷你Web服务器的本地HTTP URL,即不是来自字符串或文件URL)。

我的问题是:

有没有办法在“IE9编辑模式”下使用WebBrowser控件,并仅在必要时才有滚动条?


你已经知道如何使用designMode属性了。避免使用它有什么意义呢? - Hans Passant
1个回答

6

网页浏览器控件中的滚动条由文档滚动设置决定,您可以使用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";
    }

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接