title: How to save a page state?
body: <p>In a Windows Runtime app, I load data like this:</p>
  
  <pre><code>private async void NavigationHelper_LoadState(object sender, LoadStateEventArgs e)
  {
      var userId = e.NavigationParameter as string;
      List&lt;User&gt; followers = GetFollowers(userId);
      this.DefaultViewModel["Followers"] = followers;
  }
  </code></pre>
  
  <p>then user can select an item from <code>ListView</code>:</p>
  
  <pre><code>private void ContentListView_ItemClick(object sender, ItemClickEventArgs e)
  {
      var selectedItem = e.ClickedItem as User;
  
      if (!Frame.Navigate(typeof(FollowersPage), selectedItem.UserId))
      {
          throw new Exception(this.resourceLoader.GetString("NavigationFailedExceptionMessage"));
      }
  }
  </code></pre>
  
  <p>So it navigates forward to the same page, but shows new followers.</p>
  
  <p>The problem is that when it navigates back, it loads data again and shows from the beginning of the list rather than showing the last item selected.</p>
  
  <p>So how to save a <code>List</code> of data in <code>NavigationHelper_SaveState</code> and how to load it again in <code>NavigationHelper_LoadState</code> with last position in the list? thanks.</p>