DataGrid - letzte Tabellenzeile

Naddeldine

Grünschnabel
Habe ein DataGrid mit genau einer Tabelle, die aus einer Datenbank befüllt wird.
Ich habe keine Ahnung, wie viele Datensätze geladen werden (immer unterschiedlich), wie kann ich trotzdem auf die letzte Zeile im DataGrid zugreifen bzw. wie erhalte ich den Index des letzten Eintrags?

Kann mir jemand helfen?
Gruß, Naddeldine
 
Das einzige was mir dazu einfällt, wäre die DataSource-Eigenschaft des DataGrids wieder zu nehmen, in eine DataTable zu konvertieren und dort die Zeilenanzahl abzufragen. Beim DataGrid habe ich noch keine Eigenschaft gefunden mit der man die insgesamte Anzahl der Zeilen abrufen kann.
Code:
System.Data.DataTable dt = (DataTable) DataGrid.DataSource;
MessageBox.Show(Convert.ToString(dt.Rows.Count-1));


DataGrid.VisibleRowCount:

Code:
System.Windows.Forms.DataGridCell dgc = new DataGridCell(dg.VisibleRowCount-2,3);
-2 da der Index nullbasiert ist und außerdem unterhalb der letzten gefüllten Zeile eine neue, leere Zeile ist.

Allerdings bezieht sich diese Eigenschaft auf den sichtbaren Bereich des Datagrid, das heißt, wenn der User die Möglichkeit hat die Größe das DataGrid zu ändern, ändert sich dieser Wert auch. Es muss also alles sichtbar sein.
 
danke ihr beiden, habt mir sehr geholfen! Plötzlich kamen mir nur so die Ideen :)

Hab nun schließlich aber doch noch eine Lösung gefunden, die einfacher ist und das ganze etwas schneller von statten gehen lässt. Und zwar, hab ich das Ganze jetzt in die Funktion eingebaut, die das DataSet aufbaut. Hierüber habe ich nämlich die Möglichkeit über

Code:
 DataSet.Tables[Index].Rows.Count

die Datensätze zu zählen.
 

Neue Beiträge

Zurück