private async void CancelUpdateClicked(object sender, EventArgs e) { SpendListViewItems.SelectedItem = null; await OptionsGrid.TranslateTo(0, LocalHeight, duration, Easing.SinOut); CurrentViewModel.ShowDetails = false; }
private async void ClearAndResetItems(object sender, EventArgs e) { try { var res = await DisplayAlert("Confirm Clear", "Are you sure you want to clear all items in the list?", "OK", "Cancel"); if (!res) { return; } CurrentViewModel.SpendData = new ObservableCollection <SpendObject>(); CurrentViewModel.SpendData.Clear(); CalculateTotals(); var dt = CurrentViewModel.SerializeDataBase(CurrentViewModel.SpendData); var saved = await CurrentViewModel.SaveAnyString(dt, Constants.CurrentSpendList); await OptionsGrid.TranslateTo(-LocalHeight / 2, 0, duration, Easing.SinOut); CurrentViewModel.ShowOptions = false; CalculateTotals(); } catch (Exception ex) { Debug.WriteLine(ex.Message); } }
private async void ShowOptions(object sender, EventArgs e) { try { CurrentViewModel.ShowOptions = true; await OptionsGrid.TranslateTo(0, 0, duration, Easing.SinOut); // await AddGrid.TranslateTo(0, 0, duration, Easing.SinOut); } catch (Exception ex) { Debug.WriteLine(ex.Message); } }
private async void ShowItemTapped(object sender, EventArgs e) { try { if (!(sender is Grid lv)) { return; } if (!(lv.BindingContext is BudgetDataMain sel)) { return; } CurrentBudgetIndex = CurrentViewModel.BudgetDataEntry.IndexOf(sel); CurrentViewModel.CurrentBudgetItem = sel; CurrentViewModel.ShowStats = false; CurrentViewModel.ShowAdd = false; switch (sel.Frequency) { case FrequencyOfIncomeExpenses.Weekly: FrequencyPicker.SelectedIndex = 0; break; case FrequencyOfIncomeExpenses.Fortnightly: FrequencyPicker.SelectedIndex = 1; break; case FrequencyOfIncomeExpenses.Monthly: FrequencyPicker.SelectedIndex = 2; break; case FrequencyOfIncomeExpenses.Annually: FrequencyPicker.SelectedIndex = 3; break; default: FrequencyPicker.SelectedIndex = 0; break; } CurrentViewModel.ShowDetails = true; await OptionsGrid.TranslateTo(0, 0, duration, Easing.SinOut); } catch (Exception ex) { Debug.WriteLine(ex.Message); } }
private async void AddItemClicked(object sender, EventArgs e) { try { CurrentViewModel.ShowStats = false; CurrentViewModel.ShowDetails = true; await OptionsGrid.TranslateTo(0, 0, duration, Easing.SinOut); CurrentViewModel.ShowAdd = true; CurrentViewModel.CurrentBudgetItem = new BudgetDataMain(); } catch (Exception ex) { Debug.WriteLine(ex.Message); } }
private async void HideOptionsCancel(object sender, EventArgs e) { try { await SaveIncome(); CalculateTotals(); await OptionsGrid.TranslateTo(0, LocalHeight, duration, Easing.SinOut); CurrentViewModel.ShowOptions = false; } catch (Exception ex) { Debug.WriteLine(ex.Message); } }
private async void SaveItemClicked(object sender, EventArgs e) { try { CurrentViewModel.BudgetDataEntry.Add(CurrentViewModel.CurrentBudgetItem); var ord = CurrentViewModel.BudgetDataEntry.OrderByDescending(c => c.IncomeOrExpense).ThenBy(ed => ed.Frequency).ToList(); CurrentViewModel.BudgetDataEntry.Replace(ord); CalculateTotals(currentFequencyUsedToCalculate); await OptionsGrid.TranslateTo(0, LocalHeight, duration, Easing.SinOut); CurrentViewModel.ShowDetails = false; } catch (Exception ex) { Debug.WriteLine(ex.Message); } }
private async void ShowSelectedItem(object sender, SelectedItemChangedEventArgs e) { if (!(sender is ListView lv)) { return; } if (!(lv.SelectedItem is BudgetDataMain sel)) { return; } CurrentBudgetIndex = CurrentViewModel.BudgetDataEntry.IndexOf(sel); CurrentViewModel.CurrentBudgetItem = sel; CurrentViewModel.ShowStats = false; switch (sel.Frequency) { case FrequencyOfIncomeExpenses.Weekly: FrequencyPicker.SelectedIndex = 0; break; case FrequencyOfIncomeExpenses.Fortnightly: FrequencyPicker.SelectedIndex = 1; break; case FrequencyOfIncomeExpenses.Monthly: FrequencyPicker.SelectedIndex = 2; break; case FrequencyOfIncomeExpenses.Annually: FrequencyPicker.SelectedIndex = 3; break; default: FrequencyPicker.SelectedIndex = 0; break; } CurrentViewModel.ShowDetails = true; await OptionsGrid.TranslateTo(0, 0, duration, Easing.SinOut); //lv.SelectedItem = null; }