You can't drag a row as such. A row doesn't exist as an independent object.
The best you can do is to simulate the dragging of a row, either by dragging the entire grid or by dragging the textbox in one column of the row. Either way, it's up to you to interpret the drop action as applying to the row.
You first need to set to 1 the oleDragMode property of the grid, or of the textbox within the cell, as appropriate.
Next, in the same object's oleStartDrag, you store the data that you want to drag in the oDataObject object, which the method receives as a parameter. In this case, you would store the contents of the row being dragged.
You then write code in the oleDragDrop of the receiving object. The method receives the same oDataObject as above - the one containing the data from the row. The code must can access that data, and do anything you like with it. For example, if you are dropping the row on another grid, the code could insert a row in the cursor that populates the grid and fill it with the relevant data.
The above is a very quick overview. You really need to read up on the subject in more detail in the Help file. I suggest you give it a try, and come back if you have any detailed questions.
Mike
__________________________________
Mike Lewis (Edinburgh, Scotland)
Visual FoxPro articles, tips, training, consultancy