Thanks for looking into it. It seems to me all this does is frustrate users because they don’t know the technicalities of how the grid works. They just see it as “it unselected things automatically for me when I didn’t tell it to”.
It seems like virtualmode should logically allow you to select any number of rows (they’ve been selected virtually), then it’s up to me as the programmer to decide how to handle these selections which have not yet been loaded into the grid. I’ll probably need to go to the server to download the data I need if the grid doesn’t have the data loaded, but at least that’s work on my side and the users don’t see it as a bug.
Right now this is my biggest issue with how the grid works, because it effectively “loses” a user’s selections without telling them. They could easily try to select 100 rows, the grid will let them do it, but only the last 20 or so actually get processed.