Te puedo dar un ejemplo muy sencillo...Trata de pasar filas seleccionadas a otro dw (arrastrando) con la misma estructura.....espero te sirva de algo
//Colocas el siguiente código en el evento clicked de tu dw fuente.
if row > 0 then
if IsSelected (row) then //Devuelve true si la fila actual ya esta seleccionada
SelectRow(row,false) //Desselecciona la fila
else
SelectRow(row,true) //Selecciona la fila
end if
drag(begin!)
end if
//Luego en el evento DragDrop del dw destino.
datawindow ldw //Defines una variable donde se instanciará el dw fuente.
long ll_row
if isvalid(source) then
if source.typeof() = datawindow! then //Preguntamos si el objeto arrastrado es un dw
ldw=source //Instanciamos
//Este bucle obtendrá las filas seleccionadas del dw fuente y las copia en el dw destino
do while ldw.GetSelectedRow(ll_row)>0
ll_row=ldw.GetSelectedRow(ll_row)
ldw.RowsCopy(ll_row,ll_row,Primary!,this,rowcount() + 1, Primary!)
loop
end if
end if
Cualquier duda nos comentas...
Suerte !