与具有枚举 ScrollBars 属性的 RichTextBox 控件不同,WebBrowser 控件只有一个 bool 属性“ScrollBarsEnabled”。
设置它 ScrollBarsEnabled = True,垂直滚动条一直显示(即使不需要)。水平滚动条的行为与人们预期的一样,仅在需要时出现。
设置 ScrollBarsEnabled = False; 滚动条都没有出现。
示例代码:
public Form1()
{
InitializeComponent();
WebBrowser webBrowser1 = new WebBrowser();
webBrowser1.Size = new Size(this.Width - 50, this.Height - 50);
webBrowser1.Location = new Point(25, 10);
webBrowser1.AllowWebBrowserDrop = false;
webBrowser1.ScrollBarsEnabled = true;
string preText = "<html><head></head><body><div>";
string bodyText = "Hello World";
string postText = "</body></div></html>";
webBrowser1.DocumentText = preText + bodyText + postText;
this.Controls.Add(webBrowser1);
}
其他的尝试:
- 尝试过 .Net 4.0 和 .Net 2.0。
- 尝试使用装有 IE6 和 IE8 的计算机
- 尝试加载外部页面(使用 .Navigate("someurl") 而不是设置 DocumentText。
最佳答案
在大多数浏览器中可以通过 CSS 控制滚动条,但只有在您可以控制内容时才有用:
html, body
{
overflow: auto;
}
当然,WebBrowser 控件是否支持这一点还有待观察。
关于c# - 如何仅在需要时才在 .NET WebBrowser 控件上显示垂直滚动条?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7855201/