3

我在 Windows 窗体上有一个面板。面板已启用自动滚动。滚动条按应有的方式显示,并且滚动条通常按应有的方式运行。

但是面板的内容只有在释放鼠标按钮时才会更新。如何在滚动条移动时使内容滚动。(我想复制大多数现代程序的滚动行为,例如文字处理器和网络浏览器……移动滚动条,内容也会立即滚动。)

我正在使用 C#、Visual Studio 2008 pro 和 Windows XP-pro。

4

1 回答 1

8

我终于在网上找到了一个提示,它有效。

钩住面板的滚动事件,并在事件处理程序中,输入如下代码:

if (e.ScrollOrientation == ScrollOrientation.VerticalScroll) {
  panel1.VerticalScroll.Value = e.NewValue;
}

其中 e 是传递给事件处理程序的 ScrollEventArgs 对象。

当然,水平的类似代码。

我不知道为什么这不是自动的,或者为什么至少没有属性可以实现它。

于 2010-04-26T15:46:28.530 回答