BRAVO TODD, it works, exactly the way you stipulated!!
>The following works ok, is it like what you are trying to do? (ps, I've missed up the events cycle, you have to cancel the program to get out, oh well...)
>
>
>select * from (set("reso", 1)) into cursor toldyouso
>oform = createobj("form")
>oform.visible = .t.
>oform.show
>oform.addobject("mygrid", "samplegrid")
>oform.mygrid.recordsource = "toldyouso"
>oform.mygrid.recordsource = ''
>select * from (set("reso", 1)) into cursor toldyouso
>oform.mygrid.recordsource = "toldyouso"
>oform.mygrid.visible = .t.
>* obviously, if things work the way you say, nothing
>* should happen when you changes rows and cols.
>* If it works my way, you get an "I Told You So" message :-)
>read events
>
>define class samplegrid as grid
>procedure beforerowcolchange
> LPARAMETERS nColIndex
> wait window "I Told You So"
>endproc
>
>
>>Are you saying, that it will also maintain the validation rules aswell (methods)??
>>
>>Eegads, that would be wonderfull!!!
>>
>>Thanks
>>
>>PS: I'll walk into it, if you remove the rings!!! (wouldn't be the first time) ;)
>>
>>>Keith:
>>>
>>>#1 -- Here is my fist, please walk vigourisly into it a number of times. (If you knew it wouldn't work and you were going to get that reply, it would have saved just bunches and bunches of my time if you had mentioned that.) :-)
>>>
>>>#2 -- This works (at least, everyone tells me it does, I personally use views whereever I can.) BEFORE CHANGING ANYTHING (note the polite emphasis) set the record source to '', then make your changes to the cursor, then set the record source back! I've had people tell me it doesn't work, only to discover that they are changing the recordsource BEFORE setting it to a blank ('')
>>>