Heim >Backend-Entwicklung >C++ >Wie implementiert man die Paginierung in einer Windows Forms DataGridView?
Paginierungsimplementierung in Windows Forms DataGridView
In Windows Forms besteht die Notwendigkeit, große Datensätze effizient anzuzeigen und gleichzeitig die Benutzerfreundlichkeit zu wahren. Durch die Paginierung können Benutzer durch Datensätze navigieren, indem sie diese in kleinere Teilmengen unterteilen, die als Seiten angezeigt werden. In diesem Artikel wird untersucht, wie Sie eine Paginierung in einem DataGridView-Steuerelement in einem Windows-Formular erreichen.
Benutzerdefiniertes Steuerelement vs. DataGridView-Eigenschaften
Die DataGridView-Komponente bietet keine integrierte Paginierungsfunktion. Daher ist die Erstellung eines benutzerdefinierten Steuerelements nicht erforderlich. Stattdessen können wir das BindingNavigator-Steuerelement in Verbindung mit einer benutzerdefinierten Datenquelle verwenden, die Seitenumbrüche unterstützt.
Implementierung:
Der folgende Codeausschnitt beschreibt die Implementierung der Paginierung in DataGridView:
private const int totalRecords = 43; private const int pageSize = 10; public Form1() { dataGridView1.Columns.Add(new DataGridViewTextBoxColumn { DataPropertyName = "Index" }); bindingNavigator1.BindingSource = bindingSource1; bindingSource1.CurrentChanged += new System.EventHandler(bindingSource1_CurrentChanged); bindingSource1.DataSource = new PageOffsetList(); }
Die PageOffsetList-Klasse stellt eine benutzerdefinierte IListSource bereit, die eine Liste von zurückgibt Seitenversätze basierend auf der Gesamtzahl der Datensätze und der gewünschten Seitengröße. Wenn der Benutzer auf die Schaltfläche „Nächste Seite“ des BindingNavigators klickt, wird das Ereignis bindingSource1_CurrentChanged ausgelöst.
private void bindingSource1_CurrentChanged(object sender, EventArgs e) { int offset = (int)bindingSource1.Current; List<Record> records = new List<Record>(); for (int i = offset; i < offset + pageSize && i < totalRecords; i++) records.Add(new Record { Index = i }); dataGridView1.DataSource = records; }
Im Ereignishandler wird der aktuelle Seitenoffset abgerufen und zum Abrufen der gewünschten Seite mit Datensätzen verwendet . Die abgerufenen Datensätze werden dann an das DataGridView-Steuerelement gebunden, wodurch effektiv die nächste Seite angezeigt wird.
Schlussfolgerung:
Durch die Verwendung des BindingNavigator und einer benutzerdefinierten Datenquelle, die Paginierung unterstützt, Wir haben die Paginierungsfunktion innerhalb eines DataGridView-Steuerelements in einem Windows-Formular implementiert. Dieser Ansatz ermöglicht eine effiziente Navigation in großen Datensätzen, verbessert das Benutzererlebnis und macht die Datenmanipulation einfacher zu handhaben.
Das obige ist der detaillierte Inhalt vonWie implementiert man die Paginierung in einer Windows Forms DataGridView?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!