【发布时间】:2014-04-12 09:37:33
【问题描述】:
我有一个带有两个控件的 Windows 窗体,一个邮件控件(Dock = Fill)和一个属性控件(Dock = Right)。属性控件设置为 AutoScroll。它有一些可扩展的面板,如果用户展开太多面板,控件的高度大于窗口高度,我设置 AutoScroll 属性以便在这种情况下自动显示滚动条 - 这确实有效。但是,滚动条绘制在属性控件上。滚动条当然需要一些地方,但我希望属性窗口的宽度增加,只要显示滚动条(并因此减小主控件的大小),以便滚动条位于右侧完全显示的属性控件。
你能给我一个提示吗?我需要更改控件的某些属性吗?或者是否有事件“ScrollBarsShown”或我可以捕获并手动扩展属性控件的宽度?
非常感谢!
【问题讨论】:
-
你能发布你现有的代码吗?
-
你想看什么?我没有任何事件处理代码,但是因为我找不到触发的正确事件。否则我只有在我将控件放置在设计器中时自动生成的代码 - 你想看看吗?
-
滚动条的出现减小了表单的客户端大小。所以 ClientSizeChanged 事件触发。你肯定要考虑为滚动条保留足够的空间,这样它就不会与控件重叠,你也不会得到水平滚动条。
标签: c# winforms autoscroll