async Task ExecuteLoadItemsCommand() { if (IsBusy) { return; } IsBusy = true; try { Items.Clear(); var items = await DataStore2.GetItemsAsync(true); foreach (var item in items) { Items.Add(item); } } catch (Exception ex) { Debug.WriteLine(ex); } finally { IsBusy = false; } }
public OfferedCitiesViewModel() { Title = "Available cities"; selectedCities = new List <SelectableItem <City> >(); Items = new ObservableCollection <SelectableItem <City> >(); LoadItemsCommand = new Command(async() => await ExecuteLoadItemsCommand()); MessagingCenter.Subscribe <AddNewCityPage, SelectableItem <City> >(this, "AddItem", async(obj, item) => { var _item = item as SelectableItem <City>; Items.Add(_item); await DataStore2.AddItemAsync(_item); }); }