internal override DragDropEffects StartDrag (IntPtr handle, object data, DragDropEffects allowed_effects) {
Hwnd hwnd = Hwnd.ObjectFromHandle (handle);
if (hwnd == null)
throw new ArgumentException ("Attempt to begin drag from invalid window handle (" + handle.ToInt32 () + ").");
return Dnd.StartDrag (hwnd.client_window, data, allowed_effects);
}