0

我创建了一个用户控件,它本质上是一个文本编辑器(在 OnPaint 中使用 Graphics.Drawstring)。

我已经适当地设置了 AutoScroll = true 和 AutoScrollMinSize 值。一切都在按它应该的方式工作......

除了,我希望控件在我当前滚动时自行滚动(即单击并拖动滚动条......并且在拖动时,控件应该一直滚动)。目前它只在滚动条被释放(鼠标向上)时滚动。

我已经尝试实现 _Scroll 并使控件无效,但这只会使其无法控制地闪烁。

由于难以描述,我在网上找不到任何示例!

谁能指出我正确的方向?

4

1 回答 1

1

Control.Invalidate()会使某些东西严重闪烁。我之前在绘制折线图时遇到过在鼠标位置上绘制十字准线的问题PictureBox。诀窍是使用(我不记得哪个最好先来)

Control.Update();
Control.Refresh();

Scroll事件中。根据您在其中绘制的其他内容Control以及绘制方式,这可能对您更好。这也是在 上测试的PictureBoxControl可能是另一回事。

于 2013-08-30T13:21:54.190 回答