Übersetzung vorschlagen
 
Andere Vorschläge:

progress indicator
Keine anderen Vorschläge
Per Mausklick bewerten und Feedback geben
MSDN
MSDN Library
Visual Studio 2010
Visual Studio
Windows Forms
 Architektur des DataGridView-Steuer...
Alle reduzieren/Alle erweitern Alle reduzieren
Inhalt anzeigen:  Englisch mit deutscher ÜbersetzungInhalt anzeigen: Englisch mit deutscher Übersetzung
.NET Framework 4 - Windows Forms
DataGridView Control Architecture (Windows Forms)

The DataGridView control and its related classes are designed to be a flexible, extensible system for displaying and editing tabular data. These classes are all contained in the System.Windows.Forms namespace, and they are all named with the "DataGridView" prefix.

The primary DataGridView companion classes derive from DataGridViewElement. The following object model illustrates the DataGridViewElement inheritance hierarchy.

DataGridViewElement object model

DataGridViewElement Object Model

The DataGridViewElement class provides a reference to the parent DataGridView control and has a State property, which holds a value that represents a combination of values from the DataGridViewElementStates enumeration.

The following sections describe the DataGridView companion classes in more detail.

DataGridViewElementStates

The DataGridViewElementStates enumeration contains the following values:

The values of this enumeration can be combined with the bitwise logical operators, so the State property can express more than one state at once. For example, a DataGridViewElement can be simultaneously Frozen, Selected, and Visible.

Cells and Bands

The DataGridView control comprises two fundamental kinds of objects: cells and bands. All cells derive from the DataGridViewCell base class. The two kinds of bands, DataGridViewColumn and DataGridViewRow, both derive from the DataGridViewBand base class.

The DataGridView control interoperates with several classes, but the most commonly encountered are DataGridViewCell, DataGridViewColumn, and DataGridViewRow.

DataGridViewCell

The cell is the fundamental unit of interaction for the DataGridView. Display is centered on cells, and data entry is often performed through cells. You can access cells by using the Cells collection of the DataGridViewRow class, and you can access the selected cells by using the SelectedCells collection of the DataGridView control. The following object model illustrates this usage and shows the DataGridViewCell inheritance hierarchy.

DataGridViewCell object model

DataGridViewCell Object Model

The DataGridViewCell type is an abstract base class, from which all cell types derive. DataGridViewCell and its derived types are not Windows Forms controls, but some host Windows Forms controls. Any editing functionality supported by a cell is typically handled by a hosted control.

DataGridViewCell objects do not control their own appearance and painting features in the same way as Windows Forms controls. Instead, the DataGridView is responsible for the appearance of its DataGridViewCell objects. You can significantly affect the appearance and behavior of cells by interacting with the DataGridView control's properties and events. When you have special requirements for customizations that are beyond the capabilities of the DataGridView control, you can implement your own class that derives from DataGridViewCell or one of its child classes.

The following list shows the classes derived from DataGridViewCell:

DataGridViewColumn

The schema of the DataGridView control's attached data store is expressed in the DataGridView control's columns. You can access the DataGridView control's columns by using the Columns collection. You can access the selected columns by using the SelectedColumns collection. The following object model illustrates this usage and shows the DataGridViewColumn inheritance hierarchy.

DataGridViewColumn object model

DataGridViewColumn Object Model

Some of the key cell types have corresponding column types. These are derived from the DataGridViewColumn base class.

The following list shows the classes derived from DataGridViewColumn:

DataGridView Editing Controls

Cells that support advanced editing functionality typically use a hosted control that is derived from a Windows Forms control. These controls also implement the IDataGridViewEditingControl interface. The following object model illustrates the usage of these controls.

DataGridView editing control object model

DataGridView Editing Control Object Model

The following editing controls are provided with the DataGridView control:

For information about creating your own editing controls, see How to: Host Controls in Windows Forms DataGridView Cells.

The following table illustrates the relationship among cell types, column types, and editing controls.

DataGridViewRow

The DataGridViewRow class displays a record's data fields from the data store to which the DataGridView control is attached. You can access the DataGridView control's rows by using the Rows collection. You can access the selected rows by using the SelectedRows collection. The following object model illustrates this usage and shows the DataGridViewRow inheritance hierarchy.

DataGridViewRow object model

DataGridViewRow Object Model

You can derive your own types from the DataGridViewRow class, although this will typically not be necessary. The DataGridView control has several row-related events and properties for customizing the behavior of its DataGridViewRow objects.

If you enable the DataGridView control's AllowUserToAddRows property, a special row for adding new rows appears as the last row. This row is part of the Rows collection, but it has special functionality that may require your attention. For more information, see Using the Row for New Records in the Windows Forms DataGridView Control.

.NET Framework 4 - Windows Forms
Architektur des DataGridView-Steuerelements (Windows Forms)

Das DataGridView-Steuerelement und seine verwandten Klassen wurden als flexibles, erweiterbares System zur Anzeige und Bearbeitung von Tabellendaten entwickelt. Sämtliche Klassen sind im System.Windows.Forms-Namespace enthalten und verfügen über das Präfix "DataGridView" in ihrem Namen.

Die primären DataGridView-Assistentenklassen werden von DataGridViewElement abgeleitet. Das folgende Objektmodell veranschaulicht die Vererbungshierarchie des DataGridViewElement.

DataGridViewElement-Objektmodell

DataGridViewElement-Objektmodell

Die DataGridViewElement-Klasse stellt einen Verweis auf das übergeordnete DataGridView-Steuerelement bereit und verfügt über die State-Eigenschaft mit einem Wert, der eine Kombination der Werte aus der DataGridViewElementStates-Enumeration darstellt.

In den folgenden Abschnitten werden die DataGridView-Assistentenklassen ausführlicher beschrieben.

DataGridViewElementStates

Die DataGridViewElementStates-Enumeration verfügt über folgende Werte.

Die Werte dieser Enumeration können mit bitweisen logischen Operatoren kombiniert werden, sodass die State-Eigenschaft mehrere Zustände gleichzeitig wiedergeben kann. Beispielsweise kann DataGridViewElement gleichzeitig Frozen, Selected und Visible entsprechen.

Zellen und Bänder

Das DataGridView-Steuerelement umfasst zwei grundlegende Objekttypen: Zellen und Bänder. Alle Zellen werden von der DataGridViewCell-Basisklasse abgeleitet. Die beiden Bandtypen DataGridViewColumn und DataGridViewRow werden von der DataGridViewBand-Basisklasse abgeleitet.

Das DataGridView-Steuerelement wirkt mit mehreren Klassen, am häufigsten jedoch mit DataGridViewCell, DataGridViewColumn und DataGridViewRow zusammen.

DataGridViewCell

Die Zelle stellt die grundlegende Interaktionseinheit für DataGridView dar. Die Anzeige beruht auf Zellen, und auch für die Dateneingabe werden häufig Zellen verwendet. Für den Zugriff auf Zellen verwenden Sie die Cells-Auflistung der DataGridViewRow-Klasse und für den Zugriff auf ausgewählte Zellen die SelectedCells-Auflistung des DataGridView-Steuerelements. Das folgende Objektmodell veranschaulicht diese Verwendungsmöglichkeit und stellt die Vererbungshierarchie des DataGridViewCell dar.

DataGridViewCell-Objektmodell

DataGridViewCell-Objektmodell

Der Typ DataGridViewCell ist eine abstrakte Basisklasse, von der alle Zellentypen abgeleitet werden. DataGridViewCell und die zugehörigen abgeleiteten Typen sind keine Windows Forms-Steuerelemente, einige Typen fungieren jedoch als Host für Windows Forms-Steuerelemente. Jede von einer Zelle unterstützte Bearbeitungsfunktion wird üblicherweise von einem gehosteten Steuerelement behandelt.

DataGridViewCell-Objekte sind nicht in der Lage, ihre Darstellungs- und Zeichenfeatures auf dieselbe Weise wie Windows Forms-Steuerelemente zu steuern. Stattdessen ist DataGridView für die Darstellung der DataGridViewCell-Objekte zuständig. Durch die Interaktion mit den Eigenschaften und Ereignissen des DataGridView-Steuerelements können Sie die Darstellung und das Verhalten von Zellen entscheidend beeinflussen. Wenn Sie spezielle Anpassungen vornehmen möchten, die über die Fähigkeiten des DataGridView-Steuerelements hinausgehen, können Sie eine eigene Klasse implementieren, die von DataGridViewCell oder einer der untergeordneten Klassen abgeleitet wird.

Die folgende Liste enthält die von DataGridViewCell abgeleiteten Klassen:

DataGridViewColumn

Das Schema des an das DataGridView-Steuerelement angefügten Datenspeichers wird in den Spalten des DataGridView-Steuerelements angegeben. Für den Zugriff auf die Spalten des DataGridView-Steuerelements verwenden Sie die Columns-Auflistung. Für den Zugriff auf ausgewählte Spalten verwenden Sie die SelectedColumns-Auflistung. Das folgende Objektmodell veranschaulicht diese Verwendungsmöglichkeit und stellt die Vererbungshierarchie des DataGridViewColumn dar.

DataGridViewColumn-Objektmodell

DataGridViewColumn-Objektmodell

Einige der wichtigsten Zellentypen verfügen über entsprechende Spaltentypen. Diese werden von der DataGridViewColumn-Basisklasse abgeleitet.

Die folgende Liste enthält die von DataGridViewColumn abgeleiteten Klassen:

DataGridView-Bearbeitungssteuerelemente

Zellen, die erweiterte Bearbeitungsfunktionen unterstützen, verwenden normalerweise ein von einem Windows Forms-Steuerelement abgeleitetes, gehostetes Steuerelement. Von diesen Steuerelementen wird auch die IDataGridViewEditingControl-Schnittstelle implementiert. Das folgende Objektmodell veranschaulicht die Verwendung dieser Steuerelemente.

Objektmodell für das DataGridView-Bearbeitungssteuerelement

Objektmodell des DataGridView-Bearbeitungssteuerelements

Die folgenden Bearbeitungssteuerelemente werden mit dem DataGridView-Steuerelement bereitgestellt:

Informationen zum Erstellen eigener Bearbeitungssteuerelemente finden Sie unter Gewusst wie: Hosten von Steuerelementen in DataGridView-Zellen in Windows Forms.

In der folgenden Tabelle werden die Beziehungen zwischen Zellentypen, Spaltentypen und Bearbeitungssteuerelementen veranschaulicht.

DataGridViewRow

Durch die DataGridViewRow-Klasse werden die Datenfelder eines Datensatzes aus dem Datenspeicher angezeigt, an den das DataGridView-Steuerelement angefügt ist. Für den Zugriff auf die Zeilen des DataGridView-Steuerelements verwenden Sie die Rows-Auflistung. Für den Zugriff auf ausgewählte Zeilen verwenden Sie die SelectedRows-Auflistung. Das folgende Objektmodell veranschaulicht diese Verwendungsmöglichkeit und stellt die Vererbungshierarchie des DataGridViewRow dar.

DataGridViewRow-Objektmodell

DataGridViewRow-Objektmodell

Sie können eigene Typen von der DataGridViewRow-Klasse ableiten, obwohl dies normalerweise nicht notwendig ist. Das DataGridView-Steuerelement verfügt über mehrere zeilenbezogene Ereignisse und Eigenschaften zum Anpassen des Verhaltens seiner DataGridViewRow-Objekte.

Wenn Sie für das DataGridView-Steuerelement die AllowUserToAddRows-Eigenschaft aktivieren, wird an letzter Position eine spezielle Zeile zum Hinzufügen neuer Zeilen eingeblendet. Diese Zeile gehört zwar zur Rows-Auflistung, verfügt jedoch über spezielle Funktionen, die u. U. beachtet werden müssen. Weitere Informationen finden Sie unter Verwenden der Zeile für neue Datensätze im DataGridView-Steuerelement in Windows Forms.

Communityinhalt   Was ist Community Content?
Neuen Inhalt hinzufügen RSS  Anmerkungen
Processing
© 2012 Microsoft. Alle Rechte vorbehalten. Nutzungsbedingungen | Markenzeichen | Informationen zur Datensicherheit
Page view tracker