我刚刚为 CheckedListBox 实现了拖放重新排序功能。现在我希望它向下滚动,如果拖到底部之外,反之亦然(正常的拖放自动滚动)
我发现了大量的 WPF 信息,但我不知道如何将这些解决方案应用于我的 winform ChekedListBox。
这是我的代码:
private void myListBox_DragOver(object sender, DragEventArgs e)
{
e.Effect = DragDropEffects.Move;
Point point = myListBox.PointToClient(new Point(e.X, e.Y));
int index = myListBox.IndexFromPoint(point);
int selectedIndex = myListBox.SelectedIndex;
if (index < 0)
{
index = selectedIndex;
}
if (index != selectedIndex)
{
myListBox.SwapItems(selectedIndex, index);
myListBox.SelectedIndex = index;
}
}