title: Windows 8 App The application called an interface that was marshalled for a different thread
body: <p>I am working on a Windows 8 application using c#/XAML.  Everything has been working except for this event handler where I get the following error on this line.</p>
  
  <pre>await RefreshUserInfoAsync();</pre> 
  
  <p><strong>The application called an interface that was marshalled for a different thread. (Exception from HRESULT: 0x8001010E (RPC_E_WRONG_THREAD))</strong></p>
  
  <p>This Observable Collection is being updated from a push notification handler in the app class and this event handler is in my view model. I'm not using any frameworks like MVVM Light. I looked at some of the other posts on this and tried creating my own Dispatcher Helper but I received a different error where Window.Current.Dispatcher is null. Any ideas how to make this work? 
  <pre><code></p>
  
  <pre><code>    private async void PushActions_CollectionChanged(object sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs e)
      {
          string action = e.NewItems[0] as string;
          if(action != null)
          {
               await RefreshUserInfoAsync();
          }
      }
  
  
      private async Task RefreshUserInfoAsync()
      {
          var userInfos = await SessionRepository.GetSessionUsersWithInfoAsync(SessionGuid, RoundGuid);
          this.UserInfoList = new ObservableCollection&lt;UserInfo&gt;(userInfos);
      }
  </code></pre>
  
  <p></code></pre>emphasized text</p>