public void BerechneWerte() { if ((betrag.Length > 0) && (double.TryParse(betrag, out double Betrag))) { if (Betrag.Equals(0)) { preisUebersicht = 0; } else { preisUebersicht = Data.Anzahl.Equals(0) ? 0 : Math.Round(Betrag / Data.Anzahl, 3, MidpointRounding.AwayFromZero); } } else { preisUebersicht = Data.Preis; } buyIn = buySell.Equals(BuySell.Buy) && (preisUebersicht != 0) && (Data.Anzahl != 0) ? new KaufBerechnungen().BuyInAktieGekauft(0, 0, Data.Anzahl, preisUebersicht, Data.Anzahl, Data.Fremdkostenzuschlag, Data.OrderartTyp) : 0; Data.Bemessungsgrundlage = Math.Round(preisUebersicht * Data.Anzahl, 3, MidpointRounding.AwayFromZero); steuern = new SteuerBerechnen().SteuerGesamt(Data.Steuer.Steuern); Data.Gesamt = BuySell.Equals(BuySell.Buy) ? Data.Bemessungsgrundlage + Data.Fremdkostenzuschlag.GetValueOrDefault(0) : Data.Bemessungsgrundlage - Data.Fremdkostenzuschlag.GetValueOrDefault(0) + steuern; RaisePropertyChanged(nameof(Gesamt)); RaisePropertyChanged(nameof(Bemessungsgrundlage)); RaisePropertyChanged("PreisBerechnet"); RaisePropertyChanged("BuyIn"); RaisePropertyChanged(nameof(Steuern)); }