iOSTable Topmost row

If I scroll an iOSTable so that row 6 is at the top, how do I know?
It doesnt seem to have a property to say what the visible rows are.
I can tell it ‘scroll to row x’ but I can’t ask it what row it is showing so that if the view is closed and re-opened I can make it go back to where it was ‘last time’

If there is no way to do that, is there a RELIABLE way to make it fully refresh the contents of any displayed cells as if they were just being displayed (new data)?
Invalidate does nothing.

AFAIK, there’s no way to tell where the user has scrolled to.

But if the user selected a row you can save that and when you reopen the view you can use RELOADDATA with the scroll option to position that row at the top (or middle, or bottom).

It’s possible by declare probably. UITableView has a visibleCells property – an array of the cells that are currently visible.

Did you try iOSDesignExtensions ?
It has a Table.GetScrollPositionXC which you can then use with Table.ScrollToRow