【问题标题】:AutoScroll event in WIndows FormsWindow 窗体中的 AutoScroll 事件
【发布时间】:2014-04-12 09:37:33
【问题描述】:

我有一个带有两个控件的 Windows 窗体,一个邮件控件(Dock = Fill)和一个属性控件(Dock = Right)。属性控件设置为 AutoScroll。它有一些可扩展的面板,如果用户展开太多面板,控件的高度大于窗口高度,我设置 AutoScroll 属性以便在这种情况下自动显示滚动条 - 这确实有效。但是,滚动条绘制在属性控件上。滚动条当然需要一些地方,但我希望属性窗口的宽度增加,只要显示滚动条(并因此减小主控件的大小),以便滚动条位于右侧完全显示的属性控件。

你能给我一个提示吗?我需要更改控件的某些属性吗?或者是否有事件“ScrollBarsShown”或我可以捕获并手动扩展属性控件的宽度?

非常感谢!

【问题讨论】:

  • 你能发布你现有的代码吗?
  • 你想看什么?我没有任何事件处理代码,但是因为我找不到触发的正确事件。否则我只有在我将控件放置在设计器中时自动生成的代码 - 你想看看吗?
  • 滚动条的出现减小了表单的客户端大小。所以 ClientSizeChanged 事件触发。你肯定要考虑为滚动条保留足够的空间,这样它就不会与控件重叠,你也不会得到水平滚动条。

标签: c# winforms autoscroll


【解决方案1】:

将这些控件放在TableLayoutPanel 中。排列应该是两列,一行。 Column0 将设置为 100%,而 Column1 将设置为 AutoSize。 The Row 也可以。

然后在您的表单中填写TableLayoutPanel

【讨论】:

    猜你喜欢
    • 2015-12-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多