在我的Windows窗体应用程序中,我使用FlowLayoutPanel控件向用户显示项目列表。通过让用户将控件拖动到FlowLayoutPanel中的所需位置,我已成功实现了对FlowLayoutPanel中项目的重新排序。
但是当用户拖动项目超出面板边界时,我不知道如何滚动FlowLayoutPanel。我见过ListView控件的例子,但这些技术似乎不适用于FlowLayoutPanel。
有人可以提供示例代码,最好是在c#中,如何实现此功能吗?
如果需要,我可以提供当前重新排序方法的代码示例。
谢谢!
答案 0 :(得分:4)
在移动控件后添加对ScrollControlIntoView()方法的调用。
答案 1 :(得分:2)
这可以通过设置AutoScrollPosition
属性来实现。
在DragOver
活动中:
flowLayoutPanel1.AutoScrollPosition = flowLayoutPanel1.PointToClient(new Point(e.X, e.Y));