Wie erhalten Sie die sichtbare Zeilenanzahl von DataGridView nach BindingSource.Filter?

7

Ich habe einen Tisch mit sage 1640 Elementen. Ich stelle

ein %Vor%

und die meisten Zeilen verschwinden und belassen z. B. 400 Zeilen. Ich möchte in der Lage sein, dem Benutzer "400 von 1640 Elementen anzeigen" zu zeigen, wenn er auf einige Textfelder klickt, die die Filterzeichenfolge ändern und damit die Zeilen im dataGridView-Objekt sichtbar sind (ähnlich wie iTunes, aber für medizinische Daten, nicht für Genres / Künstler / Alben, die Lieder filtern).

Ich habe versucht, bindingSource.Count und es ist immer 1640, egal was die Filter-Zeichenfolge festgelegt ist (obwohl viel weniger Zeilen wie gewünscht angezeigt werden). Ich habe versucht, alle Zeilen in dataGridView.Rows zu durchlaufen und nur die Zeilen zu zählen, die Sichtbar sind, die aber immer noch zu 1640 zählen.

Woher bekomme ich diese Informationen?

Beachten Sie, dass ich nicht SQL verwende, sondern bindingSource.DataSource eine DataSource aus einer DataView ist, die um eine DataTable gewickelt ist (aus einem dataSet, das aus XML gelesen wird).

    
Jared Updike 04.02.2009, 00:16
quelle

5 Antworten

1

Wie wäre es mit dem Hinzufügen der gefilterten Elemente in einer separaten DataTable und dem Zählen der gefilterten Elemente für die gefilterten Elemente?

    
Picflight 04.02.2009, 00:59
quelle
14

Versuchen Sie Folgendes: datagridviewname.Rows.GetRowCount(DataGridViewElementStates.Visible);

    
ThunderGr 12.11.2013 09:22
quelle
3

Jared,

Ich musste das gerade erst machen. Was für mich funktionierte, war die Verwendung der DataGridView.Rows.Count-Eigenschaft, nachdem ich den Filter angewendet habe.

Setzen Sie Ihre Datenquelle auf die DataSource-Eigenschaft der BindingSource oder der DataGridView? Es sollte die BindingSource sein.

HTH -Ja

    
Jay Riggs 04.02.2009 01:00
quelle
1

Ich habe etwas anderes verschraubt. Jay hat recht:

%Vor%

funktioniert wie:

%Vor%     
Jared Updike 06.02.2009 20:07
quelle
0

Sie müssen nur Count Eigenschaft Ihrer bindingSource ...

verwenden %Vor%     
quelle