I am using a MultiGrid with variable row heights, and I have some code that allows the user to change the width of a column. I understand that doing this does not change any props on the MultiGrid, so I need to call some of the methods on MultiGrid to "kick" it a bit to rerender properly. I found that for fixed-row height case, I can just call MultiGrid.recomputeGridSize() and that seems to work fine. But in the variable row height case (which uses CellMeasurer and CellMeasurerCache), I can't figure out the right order of calls to make. In my component which has a MultiGrid, I tried calling:
this.cellMeasurerCache.clearAll();
this.multiGrid.recomputeGridSize();
That forced things to rerender, but everything looked munged. I also tried following that with a call to
this.multiGrid.forceUpdateGrids()
But doing that only got the column widths to look right, but the row heights were all wrong. However, as soon as I scrolled a bit, everything magically looked great. Can someone suggest the right sequence of calls to make to get things properly rendered?