private List <Drink> ConvertEditToDrink(DrinkViewModel viewModel) { var drinks = new List <Drink>(); if (viewModel.CoffeeCount != 0) { drinks.Add(new Drink { Time = DateTime.Now, DrinkType = DrinksEnum.COFFEE, Amount = viewModel.CoffeeCount }); } if (viewModel.WaterCount != 0) { drinks.Add(new Drink { Time = DateTime.Now, DrinkType = DrinksEnum.WATER, Amount = viewModel.WaterCount }); } return(drinks); }
public MainViewModel() { Console.WriteLine("MainViewModel says Hello World! "); #region Commands NewCommand = new Command( execute: () => { DrinkEdit = new DrinkViewModel(); DrinkEdit.PropertyChanged += OnDrinkEditPropertyChanged; IsEditing = true; RefreshCanExecutes(); }, canExecute: () => { return(!IsEditing); }); SubmitCommand = new Command( execute: () => { DrinkEdit.PropertyChanged -= OnDrinkEditPropertyChanged; Drinks.Add(DrinkEdit); var temp = ConvertEditToDrink(DrinkEdit); if (temp.Count > 0) { temp.ForEach(it => { App.Database.SaveItemAsync(it); }); } DrinkEdit = null; IsEditing = false; RefreshCanExecutes(); }, canExecute: () => { return(DrinkEdit != null && (DrinkEdit.CoffeeCount > 0 || DrinkEdit.WaterCount > 0)); }); CancelCommand = new Command( execute: () => { DrinkEdit.PropertyChanged -= OnDrinkEditPropertyChanged; DrinkEdit = null; IsEditing = false; RefreshCanExecutes(); }, canExecute: () => { return(IsEditing); }); #endregion }