public RecetaDetailsViewModel() { Title = "Browse"; Items = new ObservableRangeCollection <RecetaDetails>(); LoadItemsCommand = new Command(async() => await ExecuteLoadItemsCommand()); MessagingCenter.Subscribe <NewItemPage, RecetaDetails>(this, "AddItem", async(obj, item) => { var _item = item as RecetaDetails; Items.Add(_item); await DataStoreRecetaDetalle.AddItemAsync(_item); }); }
async Task ExecuteLoadItemsCommand() { if (IsBusy) { return; } IsBusy = true; try { Items.Clear(); var items = await DataStoreRecetaDetalle.GetItemsAsync(true); foreach (var item in items) { if (item.Receta == Title) { Items.Add(item); } } } catch (Exception ex) { Debug.WriteLine(ex); MessagingCenter.Send(new MessagingCenterAlert { Title = "Error", Message = "Unable to load items.", Cancel = "OK" }, "message"); } finally { IsBusy = false; } }