当Control
停靠在容器中时(如Panel
)并且太宽而无法显示(因此会出现滚动条),Control.Width
似乎返回可见宽度控件(图中的顶部箭头)。
如何获得Control“想要”的宽度?即,如果你不必滚动,你会看到它的全宽(图中的底部箭头)。
答案 0 :(得分:9)
您可能会发现有两种不同的控件属性可用于此目的。 DefaultSize是最初创建时控件的大小,然后是PreferredSize,它是控件可以适应的大小。所有控件都具有这些属性,而PreferredSize应该是您正在寻找的属性。
答案 1 :(得分:8)
Bounds
是在
ClientSize
的大小减去任何滚动条
Control.PreferredSize
就是你想要的
答案 2 :(得分:1)
Control.HorizontalScrollbar.Maximum
或Control.VerticalScrollbar.Maximum
应返回所需的最大尺寸。它可能会返回一个小的数量,因为它可能会削减填充。