Ich habe ein Problem mit meinem C# -Code. Was ich versuche ist, neue Zeile zu meiner DataTable hinzufügen und dann einige Dinge berechnen und in bestimmte Zellen einfügen.Aktualisieren von SUMME, wenn Zellenwert in DataTable geändert wird
Hier ist, was I'v bekommt:
object sumAmount;
object sumDest;
object sumWhole;
DataRow row = dataTable.NewRow();
row["number"] = "1";
dataTable.Rows.Add(row);
sumAmount = dataTable.Compute("Sum(amount)", "");
dataTable.Rows[dataTable.Rows.Count - 1][all] = Int32.Parse(sumAmount.ToString());
sumDest = dataTable.Compute("Sum(dest)", "");
dataTable.Rows[dataTable.Rows.Count - 1][columnNumber] = Int32.Parse(sumDest.ToString());
sumWhole = dataTable.Compute("Sum(wholeAmount)", "");
dataTable.Rows[dataTable.Rows.Count - 1][allTogether] = Int32.Parse(sumWhole.ToString());
es richtig zum ersten Mal funktioniert. Aber wenn ich einen Zellwert ändere, dann berechne ich dies mit demselben Code (Teil mit dataTable =) und wenn ich es tue, wird der Zellwert nicht ersetzt, dies wird hinzugefügt.
Beispiel:
Als ich hatte dies:
10 3 13
6 1 7
2 0 2
18 4 22 << This is SUM
Und ich einfügen 1 in irgendeiner Zelle in der 2. Säule im erwartete dies:
10 3 13
6 1 7
2 1 3
18 5 23
Aber was im immer ist:
10 3 13
6 1 7
2 1 3
38 9 45
Als Sie können sehen, dass diese Werte nur hinzugefügt werden, aber ich verstehe es nicht warum? Kann mir jemand helfen, einen Fehler in diesem Code zu finden?
Danke für die Hilfe, ich bekomme es einfach fertig und es funktioniert! – JustSomeNewbie