Inconsistent Drag and Drop API
Every System.Windows.Forms.Control has the following events
- public event DragEventHandler DragDrop
- public event DragEventHandler DragEnter
- public event EventHandler DragLeave
- public event DragEventHandler DragOver
This means, when the user drags something away of the control, you can’t access the data anymore (unless you cached it somewhere when the DragEnter or DragOver events occured). Here is an extract from Microsoft patterns and practives on Event Design