I am using Semantic Zoom control to show the list of Contacts in my WinRT application. When I manually scroll the list, I want to get the current item which is in view (there will be more than one items in view, but I would like to get the closest one which is in view). So that I can save the scrolling position to set it as it is when user navigates back to this list of contact. Any suggestion? I tried getting the current Selected Index but it never got updated while scrolling through the list:
int lastViewedItem = ((ListViewBase)this.semanticZoom.ZoomedInView).SelectedIndex;
On navigating back
(ListViewBase)this.semanticZoom.ZoomedInView).SelectedIndex = lastViewedItem;
((ListViewBase)this.semanticZoom.ZoomedInView).ScrollIntoView(((ListViewBase)this.semanticZoom.ZoomedInView).SelectedItem);