如何在拖动时滚动flowlayoutpanel?

时间:2010-02-11 14:23:08

标签: c# .net winforms scroll flowlayoutpanel

在我的Windows窗体应用程序中,我使用FlowLayoutPanel控件向用户显示项目列表。通过让用户将控件拖动到FlowLayoutPanel中的所需位置,我已成功实现了对FlowLayoutPanel中项目的重新排序。

但是当用户拖动项目超出面板边界时,我不知道如何滚动FlowLayoutPanel。我见过ListView控件的例子,但这些技术似乎不适用于FlowLayoutPanel。

有人可以提供示例代码,最好是在c#中,如何实现此功能吗?

如果需要,我可以提供当前重新排序方法的代码示例。

谢谢!

2 个答案:

答案 0 :(得分:4)

在移动控件后添加对ScrollControlIntoView()方法的调用。

答案 1 :(得分:2)

这可以通过设置AutoScrollPosition属性来实现。

DragOver活动中:

flowLayoutPanel1.AutoScrollPosition = flowLayoutPanel1.PointToClient(new Point(e.X, e.Y));