Good day,
we reflected your code and recognized in the method "CancelCellEdit" that you are calling "RaiseCellEditEndedEvent" before changing the values to the old values.
In the attachments you will find a gif which show the problem. It's a simple calculation - cell1 * cell2 - live at cell GridView_OnCellEditEnded.
Changing cell1 - calc happens - switching to cell2 - changing cell2 - calc happens - changing back to cell1 - changing cell1 to something not valid - pressing esc to cancel - cell1 changes back to origin value - NO calc happens.
We tried each event available but we can't find one which gets called to recalculate the values.
installed version: 2019.2.618.45
Best,
Corner4