subject says it all
Right now you can repopulate by setting the DataStore with your collection again. New methods should be added to reload the data, or a specific item, instead of relying on Invalidate(). This way it can deal with keeping the scroll position and selected item
This should now be fixed. You can use a collection that uses INotifyCollectionChanged (e.g. ObservableCollection) which will track updates on the UI, or just set a new data store object.