Example #1
0
        protected override void OnAppearing()
        {
            base.OnAppearing();
            ExpenseCalculation result = new ExpenseCalculation();
            var    myexpenses         = new List <Expense>();
            var    files = Directory.EnumerateFiles(App.FolderPath, "*.expenses.csv");
            double totalExpenses;

            foreach (var filename in files)
            {
                string   file  = File.ReadAllText(filename);
                string[] array = file.Split(',');

                myexpenses.Add(new Expense
                {
                    Filename = filename,
                    Text     = array[0],
                    Date     = File.GetCreationTime(filename),
                    Amount   = array[1],
                    Category = (ExpenseCategory)Enum.ToObject(typeof(ExpenseCategory), int.Parse(array[2]))
                });
                totalExpenses = result.GetTotalExpenses(array[1]);
            }
            listView.ItemsSource = myexpenses.OrderByDescending(n => n.Date).ToList();
        }
Example #2
0
        async void OnSaveButtonClicked(object sender, EventArgs e)
        {
            ExpenseCalculation goalSetting = new ExpenseCalculation();

            if (!editor.Text.Equals(string.Empty))
            {
                Budget budget = new Budget();
                if (string.IsNullOrWhiteSpace(budget.Filename))
                {
                    filename = Path.Combine(App.FolderPath,
                                            $"{Path.GetRandomFileName()}.MonthlyBudget.txt");
                    budget.Filename = filename;
                    budget.Amount   = editor.Text;
                    ExpenseCalculation.BudgetGoalSetting = goalSetting.GetTotalBudget(budget.Amount);
                    File.WriteAllText(filename, editor.Text);
                }
                else
                {
                    budget.Amount = editor.Text;
                    File.WriteAllText(budget.Filename, editor.Text);
                }
                //    await Navigation.PopAsync();
                await Navigation.PushAsync(new ExpenseList());
            }
        }