protected override void Initialize() { InitializeComponent(); Title = "Membership Info"; profileStack.Theme = App.Current.GetThemeFromColor("gray"); btnPast.Clicked += async(sender, e) => { var historyPage = new ChallengeHistoryPage(ViewModel.Membership); historyPage.AddDoneButton("Done"); await Navigation.PushModalAsync(historyPage.WithinNavigationPage()); await Task.Delay(500); historyPage.ViewModel.GetChallengeHistoryCommand.Execute(null); }; btnChallenge.Clicked += async(sender, e) => { var conflict = ViewModel.Membership.GetChallengeConflictReason(App.CurrentAthlete); if (conflict != null) { conflict.ToToast(); return; } var datePage = new ChallengeDatePage(ViewModel.Membership.Athlete, ViewModel.Membership.League); datePage.OnChallengeSent = async(challenge) => { ViewModel.NotifyPropertiesChanged(); await Navigation.PopModalAsync(); await Navigation.PopAsync(); "Challenge sent".Fmt(ViewModel.Membership.Athlete.Name).ToToast(ToastNotificationType.Success); }; await Navigation.PushModalAsync(datePage.WithinNavigationPage()); }; ViewModel.SetPropertyChanged("CanChallenge"); }
async void OnCreateChallenge() { var membership = ViewModel.GetBestChallengee; var conflict = membership.GetChallengeConflictReason(App.CurrentAthlete); if (conflict != null) { conflict.ToToast(); return; } var datePage = new ChallengeDatePage(membership.Athlete, membership.League); datePage.OnChallengeSent = async(challenge) => { ViewModel.NotifyPropertiesChanged(); await Navigation.PopModalAsync(); "Challenge sent".Fmt(ViewModel.MembershipViewModel.Membership.Athlete.Name).ToToast(ToastNotificationType.Success); }; await Navigation.PushModalAsync(datePage.WithinNavigationPage()); }