That's essentially what I am doing. But, as you say a "workaround", it would be nice if a hierarchical data source is used so existing child records would be re-bound as well. At least, I think that's what the hierarchical datasource give you, maybe I don't fully understand it either.
What is the recommended way to find the rows that have child grids attached to them that need to be saved? My way seems quite a bit kludgy.