private async Task Initialise() { IsRunning = true; RaisePropertyChanged("IsRunning"); IEnumerable <Models.LeaderSummary> summaries = await _leaderService.GetLeadersAsync(false); int myId = await _userService.GetMyUserIdAsync(); foreach (Models.LeaderSummary summary in summaries) { LeaderSummaryViewModel vm = new LeaderSummaryViewModel(summary); vm.IsMe = (summary.id == myId); Leaders.Add(vm); } IsRunning = false; RaisePropertyChanged("IsRunning"); SearchResults = Leaders; RaisePropertyChanged("SearchResults"); var mysummary = Leaders.FirstOrDefault(l => l.IsMe == true); ScrollToMe?.Invoke(mysummary); }
public ProfileViewModel(LeaderSummaryViewModel vm) { IsLoading = true; RaisePropertyChanged("IsLoading"); ProfilePic = vm.ProfilePic; Name = vm.Name; Email = vm.Title; userId = vm.Id; Points = String.Format("{0:n0}", vm.BaseScore); _ = Initialise(false); }
private void HandleLeaderTapped(LeaderSummaryViewModel leader) { if (leader.IsMe) { Shell.Current.Navigation.PushAsync(new Profile()); } else { Shell.Current.Navigation.PushAsync(new Profile(leader)); } }
public async void Refresh() { // = true; //RaisePropertyChanged("IsRunning"); var summaries = await _leaderService.GetLeadersAsync(false); int myId = await _userService.GetMyUserIdAsync(); Leaders.Clear(); foreach (var summary in summaries) { LeaderSummaryViewModel vm = new LeaderSummaryViewModel(summary); vm.IsMe = (summary.id == myId); Leaders.Add(vm); } IsRefreshing = false; RaisePropertyChanged("IsRefreshing"); }