First stage (between StorageChangeBegin and StorageChanged) is for modifying the ADO.NET data set C1DataSet.StorageDataSet by any means available in ADO.NET. Simple tables are filled with rows or modified at this stage.
Second stage (between StorageChanged and StorageChangeEnd) is for synchronizing the C1DataSet with changed underlying data. Table views are filled with rows on this stage, using the SetTableViewRows method.