>>>>My trick for this is to set the grid's recordsource and all the columns' controlsources at design time, and then just make sure all of them exist at runtime. I have to confess that I'm doing almost all of it in command window :).
>>>
>>>I wasn't sure whether that would be allowed, setting controlsource names in a grid before, possibly, the actual cursor is created.
>>
>>No problem at design time. At run time, make sure the cursor exists before the grid instantiates.
>
>Which it would do, at .Load, as that's evaluated before the grid is.
Exactly - or, if DE is in use, in one of its before* events.
As I said elsewhere, in some cases I'm creating the grid programmatically. Then I set up the cursor and the grid itself in grid's .init().