Is there a way to tell the grid to clear out its list of initialized rows? Basically, we want to make sure that whenever a row scrolls into view, that it will get its InitializeRow event ran, even if the user has seen it before because they've scrolled and thus the grid has loaded it.
Hi,
It sounds like you want the grid to throw away any rows it has already allocated. I don't think there is any way to do that.
You can force InitializeRow to fire again by calling the Refresh method on a Row or you can call grid.Rows.Refresh(FireInitializeRow) to make the event fire for all rows.
What I really want is to get it to re-fire InitializeRow, but only on the rows that have been initialized. FireInitializeRow fires on every row, even the ones that the user has never seen and have never been loaded - despite the grid being set to LoadOnDemand.
Hm, I don't see any way to do that. You can use the Refresh method to fire InitializeRow for all rows and then check the e.ReInitialize flag. But there's no way to make the event only fire for rows that have already initialized.