场景:
现在运行它,并垂直调整窗体的大小,使其短一点,以便您希望出现一个垂直滚动条。
问题:出现两个滚动条,因为垂直滚动条的存在减小了工作区的宽度,从而迫使水平滚动条出现。
显然,.NET首先评估是否需要垂直滚动条,然后评估是否应显示水平滚动条,这取决于是否通过垂直scxrollbar来减小客户端大小。(即,同一实验不会导致不必要的“垂直”滚动条出现,而只会显示水平滚动条。)
我正在使用VB2008 Express,但我猜想这会延续到更高版本。
我需要的解决方案:我需要:A)“仅垂直自动滚动”面板。B)我需要一种方法告诉面板“重新考虑”水平滚动条是否确实必要。(刷新似乎不行。)
我遇到了听起来像您描述的内容。我只需要一个垂直滚动条,因为它最终将包含许多内容,而不是一个水平滚动条。我使用了表格布局面板;设置面板的垂直大小,以便VScroll显示;设置宽度以适应其中的内容以及您的代码将使用的任何边距或装订线。
然后,在TableLayoutPanel
设置中,将滚动面板的宽度设置为绝对宽度(我使用比panel.width多2个像素)。如果/当用户调整大小时,所有多余的大小都会分配给其他所有内容。基本上不要让滚动面板的宽度改变。可能也必须/希望设置最小表格尺寸。
我添加的内容都是相同的宽度,如果您的宽度不同,则可能必须将其设置为容纳最宽的宽度。
不知道您是否遇到过同样的事情,但是听起来确实像。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句