public void DragDrop()
{
IntPtr hWndParent = IntPtr.Zero;
Point dst = new Point();
if (this.inDrag)
{
dst = Cursor.Position;
if (this.owner != null)
{
// Position relative to owner:
dst = this.owner.PointToClient(dst);
}
if (this.startDrag)
{
this.hWndLast = (this.owner == null ? IntPtr.Zero : this.owner.Handle);
ImageList_DragEnter(
hWndLast,
dst.X, dst.Y);
this.startDrag = false;
}
ImageList_DragMove(dst.X, dst.Y);
}
}