protected bool BeginDrag(Control c)
{
// Avoid re-entrance;
lock (this)
{
if (m_dragControl != null)
{
return(false);
}
m_startMousePosition = Control.MousePosition;
if (!User32.DragDetect(c.Handle, StartMousePosition))
{
return(false);
}
m_dragControl = c;
c.FindForm().Capture = true;
AssignHandle(c.FindForm().Handle);
Application.AddMessageFilter(this);
return(true);
}
}