コード例 #1
0
        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();
        }
コード例 #2
0
        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();
        }