>That's pretty much what I came up with too... Perhaps it's best to just use a browse. The grid isn't used for editing anyway.
>
>The ultimate objective is to refresh other controls on the form based upon the presence or absence of a value in column4 of each row. The only reliable way I've found to do that is using AfterRowColChange. (Wish I had a dollar for every time I've needed a grid.lostfocus method!) However, AfterRowColChange doesn't execute if the user clicks in columns 1, 2 or 3. That's why I was trying to restrict them to column 4...
Browse IS a grid, but as I've shown it is somehow doing a few things to a grid that can't be done by a regular grid - it seems to have a few ways to control what we can't.
So, why don't you use the best of both? Issue a Browse... Freeze {yourfield} Name oBrowse in window (myform.name) NoWait, then manipulate oBrowse the way you need it - column headers, widths, fonts, position, size and whatever else you may want. Then release the form.losckscreen.