Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Das DataGridView-Steuerelement kann Daten in drei verschiedenen Modi anzeigen: gebunden, ungebunden und virtuell. Wählen Sie den am besten geeigneten Modus basierend auf Ihren Anforderungen aus.
Ungebunden
Der ungebundene Modus eignet sich zum Anzeigen relativ kleiner Datenmengen, die Sie programmgesteuert verwalten. Sie fügen das DataGridView-Steuerelement nicht wie im gebundenen Modus direkt an eine Datenquelle an. Stattdessen müssen Sie das Steuerelement selbst ausfüllen, in der Regel mithilfe der DataGridViewRowCollection.Add-Methode.
Der ungebundene Modus kann besonders nützlich für statische, schreibgeschützte Daten sein, oder wenn Sie Ihren eigenen Code bereitstellen möchten, der mit einem externen Datenspeicher interagiert. Wenn Ihre Benutzer jedoch mit einer externen Datenquelle interagieren sollen, verwenden Sie normalerweise den gebundenen Modus.
Ein Beispiel mit einer schreibgeschützten ungebundenen DataGridView-Klasse finden Sie unter Erstellen eines ungebundenen DataGridView-Steuerelements in Windows Forms.
Gebunden
Der gebundene Modus eignet sich für die Verwaltung von Daten mithilfe der automatischen Interaktion mit dem Datenspeicher. Sie können das DataGridView-Steuerelement direkt an seine Datenquelle anfügen, indem Sie die DataSource-Eigenschaft festlegen. Wenn das Steuerelement datengebunden ist, werden Datenzeilen verschoben und abgerufen, ohne dass eine explizite Verwaltung erforderlich ist. Wenn die AutoGenerateColumns-Eigenschaft true
ist, wird für jede Spalte in Ihrer Datenquelle eine entsprechende Spalte im Steuerelement erstellt. Wenn Sie ihre eigenen Spalten erstellen möchten, können Sie diese Eigenschaft auf false
festlegen und die eigenschaft DataPropertyName verwenden, um jede Spalte beim Konfigurieren zu binden. Dies ist nützlich, wenn Sie einen anderen Spaltentyp als die Standardmäßig generierten Typen verwenden möchten. Weitere Informationen finden Sie unter Spaltentypen im DataGridView-Steuerelement von Windows Forms.
Ein Beispiel mit einem gebundenen DataGridView-Steuerelement finden Sie unter Exemplarische Vorgehensweise: Validieren von Daten im DataGridView-Steuerelement in Windows Forms.
Sie können einem DataGridView Steuerelement im gebundenen Modus auch ungebundene Spalten hinzufügen. Dies ist nützlich, wenn Sie eine Spalte mit Schaltflächen oder Links anzeigen möchten, mit denen Benutzer Aktionen für bestimmte Zeilen ausführen können. Es ist auch hilfreich, Spalten mit Werten anzuzeigen, die aus gebundenen Spalten berechnet werden. Sie können die Zellwerte berechneter Spalten in einem Handler für das CellFormatting-Ereignis auffüllen. Wenn Sie jedoch DataSet oder DataTable als Datenquelle verwenden, möchten Sie möglicherweise stattdessen mithilfe der DataColumn.Expression-Eigenschaft eine berechnete Spalte erstellen. In diesem Fall behandelt das DataGridView-Steuerelement eine berechnete Spalte genauso wie jede andere Spalte in der Datenquelle.
Das Sortieren nach ungebundenen Spalten im gebundenen Modus wird nicht unterstützt. Wenn Sie eine ungebundene Spalte im gebundenen Modus erstellen, die bearbeitbare Werte enthält, müssen Sie den virtuellen Modus implementieren, um diese Werte beizubehalten, wenn das Steuerelement nach einer gebundenen Spalte sortiert wird.
Virtuell
Mit dem virtuellen Modus können Sie Ihre eigenen Datenverwaltungsvorgänge implementieren. Dies ist erforderlich, um die Werte von ungebundenen Spalten im gebundenen Modus beizubehalten, wenn das Steuerelement nach gebundenen Spalten sortiert wird. Die primäre Verwendung des virtuellen Modus besteht jedoch darin, die Leistung bei der Interaktion mit großen Datenmengen zu optimieren.
Sie befestigen das DataGridView-Steuerelement an einem Cache, den Sie verwalten, und Ihr Code steuert, wann Datenzeilen verschoben und abgerufen werden. Damit der Speicherbedarf klein bleibt, sollte der Cache mit der Anzahl der aktuell angezeigten Zeilen vergleichbar sein. Wenn der Benutzer neue Zeilen in die Ansicht scrollt, fordert ihr Code neue Daten aus dem Cache an und löscht optional alte Daten aus dem Arbeitsspeicher.
Wenn Sie den virtuellen Modus implementieren, müssen Sie nachverfolgen, wann eine neue Zeile im Datenmodell benötigt wird und wann das Hinzufügen der neuen Zeile rückgängig zu machen ist. Die genaue Implementierung dieser Funktionalität hängt von der Implementierung des Datenmodells und dessen Transaktionssemantik ab (z. B. davon, ob sich der Commitbereich auf Zellen- oder Zeilenebene befindet).
Weitere Informationen zum virtuellen Modus finden Sie unter Virtueller Modus im DataGridView-Steuerelement in Windows Forms. Ein Beispiel für die Verwendung von Ereignissen im virtuellen Modus finden Sie unter Exemplarische Vorgehensweise: Implementieren des virtuellen Modus im DataGridView-Steuerelement in Windows Forms.
Siehe auch
- DataGridView
- DataGridView.DataSource
- DataGridView.VirtualMode
- BindingSource
- DataGridViewColumn.DataPropertyName
- Anzeigen von Daten im DataGridView-Steuerelement in Windows Forms
- Spaltentypen im DataGridView-Steuerelement von Windows Forms
- Exemplarische Vorgehensweise: Erstellen eines ungebundenen DataGridView-Steuerelements in Windows Forms
- Binden von Daten an das DataGridView-Steuerelement in Windows Forms
- Virtueller Modus im DataGridView-Steuerelement in Windows Forms
- Exemplarische Vorgehensweise: Implementieren des virtuellen Modus im DataGridView-Steuerelement in Windows Forms
.NET Desktop feedback