title: Async method populating XAML binded fields inconsistently
body: <p>I have a view which is populated by two different <em>Models</em>. For my app this means that two differences <em>Services</em> are used to obtain the data for these respective models.</p>
  
  <p>Now the data simply will not populate. What do I mean? Currently, when the page loads only <code>Group.Name</code> shows. The rest of the <code>User</code> labels do not show. I have to create a button which changes a field in the <code>User</code> binded object before the three labels show.</p>
  
  <p><strong>Note:</strong> <code>BaseViewModel</code> inherits  <code>INotifyPropertyChanged</code> and <code>IPageLifecycleAware</code>. <code>SetProperty()</code> raises the event for when the property is changed.</p>
  
  <h3>View</h3>
  
  <pre><code>&lt;StackLayout Margin="10" VerticalOptions="StartAndExpand"&gt;
      &lt;Grid&gt;
          &lt;Label Grid.Row="0" Text="{Binding User.Name}"/&gt;
          &lt;Label Grid.Row="1" Text="{Binding User.Age}"/&gt;
          &lt;Label Grid.Row="2" Text="{Binding User.Occupation}"/&gt;
          &lt;Label Grid.Row="3" Text="{Binding Group.Name}"/&gt;
      &lt;/Grid&gt;
  &lt;/StackLayout&gt;
  </code></pre>
  
  <h3>ViewModel</h3>
  
  <pre><code>public class ProfileViewModel : BaseViewModel
  {
      private IGroupService _groupService;
      private IUserService _userService;
      public ProfileViewModel(IGroupService groupService, IUserService userService)
      {
          _groupService = groupService;
          _userService = userService;
          GetUser();
          GetGroup();
      }
  
      private async void GetUser()
      {
          var user = await _userService.GetUserAsync();
          User = user;
          SetProfilePhoto();
      }
  
      private async void GetGroup()
      {
          var group = await _groupService.GetGroupAsync();
          Group = group;
      }
  
      private void SetProfilePhoto()
      {
          var profilePhotoBytes = User.ProfilePhotoBytes;
          if (profilePhotoBytes == null || profilePhotoBytes.Length == 0)
              ProfilePhoto = ImageSource.FromResource("MyApp.Images.default_profile_picture.png");
          else
              ProfilePhoto = ImageSource.FromStream(() =&gt; new MemoryStream(profilePhotoBytes));
      }
  
      private ImageSource _profilePhoto;
      public ImageSource ProfilePhoto { get =&gt; _profilePhoto; set =&gt; SetProperty(ref _profilePhoto, value); }
  
      private User _user;
      public User User { get =&gt; _user; set =&gt; SetProperty(ref _user, value); 
      }
      private Group _group;
      public Group Group{ get =&gt; _group; set =&gt; SetProperty(ref _group, value); }
  }
  </code></pre>
  
  <h3>Models</h3>
  
  <pre><code>public class User: BindableBase
  {
      private string _id;
      public string Id { get =&gt; _id; set =&gt; SetProperty(ref _id, value); }
  
      private string _name;
      public string Name { get =&gt; _name; set =&gt; SetProperty(ref _name, value); }
  
      private string _age;
      public string Age { get =&gt; _age; set =&gt; SetProperty(ref _age, value); }
  
      private string _occupation;
      public string Occupation { get =&gt; _occupation; set =&gt; SetProperty(ref _occupation, value); }
  
      private byte[] _profilePhotoBytes;
      public byte[] ProfilePhotoBytes { get =&gt; _profilePhotoBytes; set =&gt; SetProperty(ref _profilePhotoBytes, value); }
  
      private ImageSource _profilePhoto;
      public ImageSource ProfilePhoto { get =&gt; _profilePhoto; set =&gt; SetProperty(ref _profilePhoto, value); }
  }
  
  public class Group: BindableBase
  {
      private string _id;
      public string Id { get =&gt; _id; set =&gt; SetProperty(ref _id, value); }
  
      private string _name;
      public string Name { get =&gt; _name; set =&gt; SetProperty(ref _name, value); }
  
      private byte[] _groupPhotoBytes;
      public byte[] GroupPhotoBytes { get =&gt; _groupPhotoBytes; set =&gt; SetProperty(ref _groupPhotoBytes, value); }
  
      private string _createdUserId;
      public string CreatedUserId { get =&gt; _createdUserId; set =&gt; SetProperty(ref _createdUserId, value); }
  
      private DateTime _createdDate;
      public DateTime CreatedDate { get =&gt; _createdDate; set =&gt; SetProperty(ref _createdDate, value); }
  }
  </code></pre>