mirror of
https://github.com/ShareX/ShareX.git
synced 2024-07-04 22:21:23 +12:00
MyListView fixes
This commit is contained in:
parent
479369dd21
commit
623c98a6bd
|
@ -130,7 +130,7 @@ protected override void OnItemDrag(ItemDragEventArgs e)
|
||||||
|
|
||||||
if (AllowDrop && e.Button == MouseButtons.Left)
|
if (AllowDrop && e.Button == MouseButtons.Left)
|
||||||
{
|
{
|
||||||
DoDragDrop((ListViewItem)e.Item, DragDropEffects.Move);
|
DoDragDrop(e.Item, DragDropEffects.Move);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -138,18 +138,23 @@ protected override void OnDragOver(DragEventArgs drgevent)
|
||||||
{
|
{
|
||||||
base.OnDragOver(drgevent);
|
base.OnDragOver(drgevent);
|
||||||
|
|
||||||
drgevent.Effect = DragDropEffects.Move;
|
ListViewItem lvi = drgevent.Data.GetData(typeof(ListViewItem)) as ListViewItem;
|
||||||
|
|
||||||
Point cp = PointToClient(new Point(drgevent.X, drgevent.Y));
|
if (lvi != null && lvi.ListView == this)
|
||||||
dragOverItem = GetItemAt(cp.X, cp.Y);
|
|
||||||
lineIndex = dragOverItem != null ? dragOverItem.Index : Items.Count;
|
|
||||||
|
|
||||||
if (lineIndex != lastLineIndex)
|
|
||||||
{
|
{
|
||||||
Invalidate();
|
drgevent.Effect = DragDropEffects.Move;
|
||||||
}
|
|
||||||
|
|
||||||
lastLineIndex = lineIndex;
|
Point cp = PointToClient(new Point(drgevent.X, drgevent.Y));
|
||||||
|
dragOverItem = GetItemAt(cp.X, cp.Y);
|
||||||
|
lineIndex = dragOverItem != null ? dragOverItem.Index : Items.Count;
|
||||||
|
|
||||||
|
if (lineIndex != lastLineIndex)
|
||||||
|
{
|
||||||
|
Invalidate();
|
||||||
|
}
|
||||||
|
|
||||||
|
lastLineIndex = lineIndex;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
protected override void OnDragDrop(DragEventArgs drgevent)
|
protected override void OnDragDrop(DragEventArgs drgevent)
|
||||||
|
@ -158,7 +163,7 @@ protected override void OnDragDrop(DragEventArgs drgevent)
|
||||||
|
|
||||||
ListViewItem lvi = drgevent.Data.GetData(typeof(ListViewItem)) as ListViewItem;
|
ListViewItem lvi = drgevent.Data.GetData(typeof(ListViewItem)) as ListViewItem;
|
||||||
|
|
||||||
if (lvi != null)
|
if (lvi != null && lvi.ListView == this)
|
||||||
{
|
{
|
||||||
ListViewItem insertItem = (ListViewItem)lvi.Clone();
|
ListViewItem insertItem = (ListViewItem)lvi.Clone();
|
||||||
Items.Insert(dragOverItem != null ? dragOverItem.Index : Items.Count, insertItem);
|
Items.Insert(dragOverItem != null ? dragOverItem.Index : Items.Count, insertItem);
|
||||||
|
|
Loading…
Reference in a new issue