我怎么知道系统滚动条的当前宽度?

如您所知,可以在“显示属性” – >“外观” – >“高级” – >“项目:滚动条”中自定义滚动条宽度。 默认值是17.但是,我不能认为这是总是这样的情况下,我可以检索这个值吗?

查看System.Windows.Forms.SystemInformation类成员: HorizontalScrollBarHeightVerticalScrollBarWidth

垂直滚动条宽度

System.Windows.Forms.SystemInformation.VerticalScrollBarWidth;

如果您想知道ScrollableControl的大小减去滚动条的大小,最简单的方法是使用Control.ClientSize属性。

从文档 :

获取或设置控件客户区的高度和宽度。 控件的客户区域是控件的边界, 减去滚动条 ,边框,标题栏和菜单非客户端元素

跳过控件的ClientSize属性。 至less在VS2013中,滚动条被包含在ClientSize中。

当我格式化宽度为304和垂直滚动条的RichTextBox时,“客户端大小”宽度为300,仅占边界。

坚持与System.Windows.Forms.SystemInformation.VerticalScrollBarWidth获得您的滚动条宽度。