I have a DataGrid with a pager with a page size of 50 inside a ScrollPanel. When I ask the grid for the visible range, it give me a range of 50 rows, the size of the page. But what I can actually see at any given time inside the ScrollPanel is often considerably fewer rows than the page size.
Is there any way to determine what rows and columns are *actually* visible in the viewport of the ScrollPanel?
The driver behind this is that I want to be able to programmatically scroll a row+cell in to view, but I would like to scroll so the row+cell is more or less in the center of the view, instead of just scrolled in to view at the edge. What I've tried to do is pick a row / column that is either farther down / right or up / left so scroll in to view, but those corrections depend on what is currently visible.
Perhaps there is a "correct" way to do this.
Thanks in advance.
- Linus