Downloaded 1.4.1.27 - still broken. In viewing my problem description above, I believe I left out some details.
To reproduce, in the demo vb code, modify the VirtualGridForm and disable the vertical scrollbar in fillgridbtn_click():
virtualGrid.ActivePort.VScrollBarEnabled = False
Run the demo form, fill w/ 10,000 rows, scroll way down *using your mousewheel so that the row currently selected does not change*, then resize the form.
Problem: As soon as the form is resized, the visible toprow reverts to 1 (and no toprow changed event is raised).
If the scrollbar is enabled, this behavior does not appear, the active visible row remains visible.
Note: In my original post, I think I left out this important detail: The currently selected row must remain unchanged; e.g. row 1. The user then scrolls the viewable rows down (using mousewheel). So the state of the grid is this: The current row is near the top, but the currently viewed row is much further down. Then, on resize the grid snaps the current row into view. It does not snap the row into view if VScrollBarEnabled = True. We desire for it not to snap the current row into view on resize.
So, to summarize: When VScrollBarEnabled=False and the user scrolls the currently selected row out of view using a mousewheel and the form is resized (and grid repainted), the currently selected row snaps back into view. This is not good. When VScrollbarEnabled=True and the user scrolls the currently selected row out of view using either the mousewheel or scrollbar and the form is resized (and grid repainted), the viewport remains on whichever rows were in view prior to the resize, regardless of the currently selected row.
Sorry for missing that information before. Please let me know if you cannot reproduce or need more information. Thank you for helping us get this resolved.