También puedes hacerlo con el DragMode manual, programando estos tres eventos:
Código Delphi
[-]
procedure TForm1.Edit1DragOver(Sender, Source: TObject; X, Y: Integer;
State: TDragState; var Accept: Boolean);
begin
if (Source is TLabel) then begin
Accept := True;
end;
end;
procedure TForm1.Label1EndDrag(Sender, Target: TObject; X, Y: Integer);
begin
if (Target is TEdit) then begin
TEdit(Target).Text := TLabel(Sender).Caption;
end;
end;
procedure TForm1.Label1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
TLabel(Sender).BeginDrag(True);
end;
Los de los Labels los asignas a todos los labels que quieras y los de los edits a todos los edits que quieras, y podrás arrastrar cualquier Label sobre cualquiera de los Edits.
