private async void navigationHelper_LoadState(object sender, LoadStateEventArgs e)
        {
            try
            {
                bool signedIn = false;
                _userViewModel = new UserViewModel();

                if (e.PageState != null && e.PageState.ContainsKey("signInStatus"))
                {
                    signedIn = (bool)e.PageState["signInStatus"];
                }

                this.DataContext = new UserViewModel();
                if (signedIn)
                    await _userViewModel.SignInCurrentUserAsync();

                this.DataContext = _userViewModel;
            }
            catch (Exception)
            { 

            }

        }
 /// <summary>
 /// Populates the page with content passed during navigation. Any saved state is also
 /// provided when recreating a page from a prior session.
 /// </summary>
 /// <param name="sender">
 /// The source of the event; typically <see cref="NavigationHelper"/>
 /// </param>
 /// <param name="e">Event data that provides both the navigation parameter passed to
 /// <see cref="Frame.Navigate(Type, Object)"/> when this page was initially requested and
 /// a dictionary of state preserved by this page during an earlier
 /// session. The state will be null the first time a page is visited.</param>
 private void navigationHelper_LoadState(object sender, LoadStateEventArgs e)
 {
 }
 private void navigationHelper_LoadState(object sender, LoadStateEventArgs e)
 {
     this.DataContext = App.CurrentUser;
 }