Преобразование ListItems в десятичное и сложение их вместе для суммы - PullRequest
0 голосов
/ 03 апреля 2020

Чего я пытаюсь добиться, так это бюджетного калькулятора. Я использую SQLite, поэтому вся моя работа с базой данных должна быть в строковом формате. ниже моя подпрограмма сохранения, чтобы показать вам, ребята ...

void AddToBudget_Clicked(object sender, System.EventArgs e)
        {
            Budget Budget = new Budget()
            {
                OutgoingProductName = OProductName.Text,
                OutgoingMonthlyCostS = OMonthlyCost.Text

            };
            using (SQLiteConnection conn = new SQLiteConnection(App.FilePath))
            {
                conn.CreateTable<Budget>();
                int rowsAdded = conn.Insert(Budget);
            }
            DisplayAlert("Added!", "Your Monthly Item has been Added to Budget!", "OK");
            BindingContext = new Budget();
            OnAppearing();
        }

Я хочу, чтобы все OutgoingMonthlyCostS элементы суммировались, прежде чем вычесть поле ввода, в котором пользователь будет вводить свой ежемесячный оклад в. Ниже приведен код для моего OutgoingMonthlyCost & OutgoingMonthlyCostS ...

private decimal outgoingMonthlyCost { get; set; }
        public decimal OutgoingMonthlyCost
        {
            get => outgoingMonthlyCost;
            set
            {
                outgoingMonthlyCost = value;
                OnPropertyChanged("OutgoingMonthlyCost");
            }
        }

        private string outgoingMonthlyCostS { get; set; }
        public string OutgoingMonthlyCostS
        {
            get => outgoingMonthlyCostS;
            set
            {
                outgoingMonthlyCostS = value;
                OnPropertyChanged("OutgoingMonthlyCostS");  
            }
        }

        public void outgoingMonthlyCostFin()
        {
            outgoingMonthlyCostS = outgoingMonthlyCost.ToString();
            TotalBudget();
        }

В настоящее время я так выложил его, но что-то не так, поскольку мое приложение продолжает падать ...

private decimal totalMonthlyCost { get; set; }
        public decimal TotalMonthlyCost
        {
            get => totalMonthlyCost;
            set
            {
                totalMonthlyCost = value;
                OnPropertyChanged("totalMonthlyCost");
                TotalBudget();
            }
        }


        private string totalMonthlyCostFin { get; set; }
        public string TotalMonthlyCostFin
        {
            get => totalMonthlyCostFin;
            set
            {
                totalMonthlyCostFin = value;
                OnPropertyChanged("totalMonthlyCostFin");
            }
        }

        public void TotalBudget()
        {

            var Conversion = default(decimal);

            if (OutgoingMonthlyCost != 0)
            {
                Conversion += decimal.Round((Convert.ToDecimal(OutgoingMonthlyCostS)), 2, MidpointRounding.AwayFromZero);
                TotalMonthlyCostFin = "£" + (TotalMonthlyCost - Conversion).ToString();
            }
            else
            {
                TotalMonthlyCostFin = "£0";
            }
        }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...