protected override void OnBindingContextChanged() { HomeRankerService = new HomeRankerService(); LoadItemsCommand = new Command(() => ExecuteLoadItemsCommand()); LoadItemsCommand.Execute(null); MessagingCenter.Subscribe <SetApartmentPage, Apartment>(this, "AddItem", async(obj, item) => { if (Apartments == null) { Apartments = new ObservableCollection <Apartment>(); } var existingIndex = Apartments.IndexOf(item); if (existingIndex != -1) { Apartments[existingIndex].UpdateInstance(item, resetFirstImageUrl: Apartments[existingIndex].FirstPictureUrl != item.FirstPictureUrl); } else { Apartments.Add(item); } Apartments.Sort(); await Shell.Current.Navigation.PopAsync(); }); base.OnBindingContextChanged(); }
public void LoadData() { HomeRankerService = new HomeRankerService(); var photos = HomeRankerService.GetPhotos(Apartment); if (photos != null && photos.Any()) { Photos = new ObservableCollection <Photo>(photos); } PhotosToDelete = new List <Photo>(); var criterias = HomeRankerService.GetCriteriasAndRates(Apartment); if (criterias != null) { Criterias = new ObservableCriterias(criterias); } else { Criterias = new ObservableCriterias(); } _initialApartmentStateHash = GetApartmentStateHash(); }