The following example will prevent a drag and drop operation, if the objects were dropped on the background of a TJamShellList:
procedure TMainForm.ShellListBeforeShellDrop(sender, DropTarget: TObject; DroppedFiles: TStrings; var ExecuteDrop: Boolean); begin if DropTarget is JamShellList then ExecuteDrop := False; end;