ASP.NET |C# :: Alle Werte einer Spalte zusammenzählen (Tips?)

zioProduct

Erfahrenes Mitglied
Huhu,

so erstmals zur Ausgangslage. Alles was ich machen will, geschiet im Update_Command meines DataGrids.

Nun kann ich ja ganz Locker die Werte der einzelnen Zellen einer Zeile auslesen mit
Code:
((TextBox)e.Item.Cells[i].Controls[0]).Text;
Wobei das TextBox da steht, weil die Zellen ja zu Texboxen werden, im Editiermodus, also lasst euch dadurch nicht verunsichern :D

Naja schön und Gut, aber nun würde ich auch noch gerne, alle Werte der Zellen in Spalte1 zusammen zählen:confused:

Da ich leider noch nichts im Sinne von DataGrid1.Columns[1].Items/.Cells oder was weiss ich was gefunden habe, wäre meine jetzige Idee, das ich auslese wie viele Zellen ich in einer Zeile habe, und dann immer um Anzahl Zellen vergrösere und mir den Wert hohle, was mich aber doch eine sehr perplexe Lösung dünkt. Deshalb meine Frage an euch:

Kennt Ihr irgend welche schönen Möglichkeiten, wie ich alle Werte aus den Zellen einer Spalte miteinander Addieren kann?

Danke schon mal, für Anregungen

greetz ziop

PS: Wer bessere Google-Begriffe als
"werte spalte datagrid asp.net" kennt, kann mir auch diese sagen ;-)
 
Naja, momentan hab ich(noch ist alles in der Planung, und ein Paar Controll-Tests, für nächste Woche (Diplomarbeit)) alles über ne DataTable, mit DataView für Filteroptionen gelöst. Wobei ich in einer älteren Arbeit, ein ähnliches Probem(einfach ohne Spalten "berechnung") es mit einem Dataset gelöst habe. Wobei ich gerade sehe, dass dieses stark untergeht in dem SqlDataAdapter oO.

Eine Überlegung die ich noch habe ist, dass wenn das DataGrid updatet wird, sprich, neue Plantage eingefügt, muss mein SQL server ja direkt auch Updated, werden, so kann ich eigentlich statt die Spalten, die Zahlen aus dem SqlServer lesen, was aber noch das Problem von den vielen Filtern mitbringt, die ich habe. Also am einfachsten wäre es, wenn ich die Werte direkt aus dem DataGrid nehmen kann.

PS: Hmm, Filterproblem hat sich meiner Meinung fast erledigt, so wie ich das sehe, können nur Daten eingegeben werden, wenn man sich in einem bestimmten Filter befindet. Trotzdem, für weitere Ideen, oder genaueres eingehen auf das DataSet wäre ok.
Ich weiss das ich beim DataSet auf
Code:
DataSet.Table[0].Columns[i]
zugreifen kann. Kann ich da noch weiter machen? Also die einzelnen Zellen?

Danke schonmals
 
C#:
foreach (DataRow dr in myDataSet.Tables[0].Rows) {
  // Do what you want to do
}
Ähnliche Vorgangsweise gibt es auch noch bei der DataView. Zudem kannst du beim DataSet auch direkte Abfragen machen. Hierzu verwendest du die Select-Methode des DataTable-Objektes welches ja hinter myDataSet.Tables[0] steht.
 
Intressante Idee! Danke, gleich mal nen Beispiel-Coden.

Somit wäre das Thema wohl zu 80% Erledigt --> erledigt ;)
 
Zurück