将滚动条添加到UserControl

时间:2010-04-10 19:41:32

标签: c# winforms user-controls scrollbar

我正在尝试使用Horizo​​ntalScroll和VerticalScroll属性向我的UserControl添加垂直和水平滚动条,但我遇到了极端问题。当我拖动或操纵栏上的滚动框时,我的问题就出现了。当我放手时,它只是跳回到起始位置!

我知道AutoScroll属性,但我不想使用它,因为我希望能够控制滚动条的每个方面,我不希望它自动完成。此外,根据文档,AutoScroll用于“[启用]用户滚动到位于其可见边界之外的任何控件”,这不是我想要的。我只想要滚动条。

... aaand我想我可以将VScrollBar和HScrollBar添加到控件中,但是为什么我应该在滚动功能已经存在时执行此操作?对我来说似乎是一种浪费。

1 个答案:

答案 0 :(得分:11)

设置AutoScrollMinSize属性。

如果您实现了OnPaint()覆盖,那么您需要使用AutoScrollPosition属性来设置e.Graphics.TranslateTransform()的参数。