InitController is also called from DbGridControl::RowModified, and there it seems it makes sense to call pColumn->UpdateFromField (that is, the content of the removed InitController).
This makes the whole issue rather more complicated, since there are other implementors of InitController (derived classes of EditBrowseBox)... Need to understand things better.
Although... RowModified is called from:
1) DbGridControl::FieldValueChanged, but there pColumn->UpdateFromField is called right before!
there, makes sense to call, could be missing now
but there the xUpdateCursor->moveToInsertRow() or
m_pDataCursor->moveToBookmark already took care
(through value changed events) to update the column's values
no need to do it again
5) DbGridControl::AdjustDataSource a second time
right after SetCurrent, see above... <sigh>
where the comment explicitly says RowModified will update the controller...
ok, makes sense to reload
Looking at DbGridControl in isolation, we could stick the previous content of InitController into RowModified, but need to look at the other implementers of InitController for a complete understanding.