Hi,
Yes, I think you have got the point and are on the right track.
First I would like to note that the DataGridView control is one of the most complicated controls in VWG. It has had quite a lot of issues, and a very big chunk of those issues are being fixed in the upcoming 6.4 version.
I personally was really hooked on the DataGridView in the beginning, and there are ways to make this work as you can see from the sample applications I directed you to.
Recently, I have turned away from the DataGridView, and currently I'm much more into using the ListView, and then open a seperate editing windows for changing the data. It needs some extra buttons (or context menus or something) to provide you with means of adding new records and deleting records, but on the whole, my applications are much simpler this way, and you get all the data changes in one place.
In my code, I usually create the editing form, attach a function to the Closed event of that form and then show the form as dialog. In that form I have the "OK" (or update, or save) button set the DialogResult to OK if the user decides to save, and then close the editing form. In the parent form the Closed handler gets called and in there I check the DialogResult.
Doing it this way, you move all your update logic into one procedure, the Closed handler on your parent form.
Hope this helps,
Palli