Standardverhalten von Tastatur und Maus im DataGrid-Steuerelement

In diesem Thema wird beschrieben, wie Benutzer mithilfe der Tastatur und Maus mit dem DataGrid-Steuerelement interagieren können.

Typische Interaktionen mit der DataGrid umfassen Navigation, Auswahl und Bearbeitung. Das Auswahlverhalten ist von den SelectionMode- und SelectionUnit-Eigenschaften betroffen. Die Standardwerte, die das in diesem Thema beschriebene Verhalten verursachen, sind DataGridSelectionMode.Extended und DataGridSelectionUnit.FullRow. Das Ändern dieser Werte kann zu einem Verhalten führen, das sich von dem beschriebenen unterscheidet. Wenn sich eine Zelle im Bearbeitungsmodus befindet, kann das Bearbeitungssteuerelement das Standardtastataturverhalten des DataGrid-Steuerelements außer Kraft setzen.

Standardtastataturverhalten

In der folgenden Tabelle sind die Standardtastataturverhalten für die DataGrid aufgeführt.

Tastenkombination oder Tastenkombination Beschreibung
NACH-UNTEN-TASTE Verschiebt den Fokus direkt unterhalb der aktuellen Zelle auf die Zelle. Wenn sich der Fokus in der letzten Zeile befindet, führt das Drücken der NACH-UNTEN-TASTE nichts aus.
NACH-OBEN-TASTE Verschiebt den Fokus direkt über der aktuellen Zelle in die Zelle. Wenn sich der Fokus in der ersten Zeile befindet, führt das Drücken des NACH-OBEN-PFEILs nichts aus.
NACH-LINKS-TASTE Verschiebt den Fokus auf die vorherige Zelle in der Zeile. Wenn sich der Fokus in der ersten Zelle in der Zeile befindet, führt das Drücken des NACH-LINKS-PFEILs nichts aus.
NACH-RECHTS-TASTE Verschiebt den Fokus auf die nächste Zelle in der Zeile. Wenn sich der Fokus in der letzten Zelle in der Zeile befindet, führ das Drücken des NACH-RECHTS-PFEILs nichts aus.
POS1 Verschiebt den Fokus auf die erste Zelle in der aktuellen Zeile.
ENDE Verschiebt den Fokus auf die letzte Zelle in der aktuellen Zeile.
BILD-AB Wenn Zeilen nicht gruppiert sind, scrollt das Steuerelement nach unten durch die Anzahl der Zeilen, die vollständig angezeigt werden. Verschiebt den Fokus auf die letzte vollständig angezeigte Zeile, ohne Spalten zu ändern.

Wenn Zeilen gruppiert sind, verschiebt der Fokus auf die letzte Zeile in der DataGrid ohne Änderung der Spalten.
BILD-AUF Wenn Zeilen nicht gruppiert sind, scrollt das Steuerelement nach oben durch die Anzahl der Zeilen, die vollständig angezeigt werden. Verschiebt den Fokus auf die erste angezeigte Zeile, ohne Spalten zu ändern.

Wenn Zeilen gruppiert sind, wird der Fokus in die erste Zeile in der DataGrid verschoben, ohne Spalten zu ändern.
TAB Verschiebt den Fokus auf die nächste Zelle in der aktuellen Zeile. Wenn sich der Fokus in der letzten Zelle der Zeile befindet, wird der Fokus in die erste Zelle in der nächsten Zeile verschoben. Wenn sich der Fokus in der letzten Zelle des Steuerelements befindet, verschiebt der Fokus auf das nächste Steuerelement in der Aktivierreihenfolge des übergeordneten Containers.

Wenn sich die aktuelle Zelle im Bearbeitungsmodus befindet und das Drücken der TAB-TASTE bewirkt, dass der Fokus von der aktuellen Zeile entfernt wird, werden alle Änderungen, die an der Zeile vorgenommen wurden, festgelegt, bevor der Fokus geändert wird.
UMSCHALT+TAB Verschiebt den Fokus auf die vorherige Zelle in der aktuellen Zeile. Wenn sich der Fokus bereits in der ersten Zelle der Zeile befindet, wird der Fokus auf die letzte Zelle in der vorherigen Zeile verschoben. Wenn sich der Fokus in der ersten Zelle des Steuerelements befindet, wird der Fokus auf das vorherige Steuerelement in der Aktivierreihenfolge des übergeordneten Containers verschoben.

Wenn sich die aktuelle Zelle im Bearbeitungsmodus befindet und das Drücken der TAB-TASTE bewirkt, dass der Fokus von der aktuellen Zeile entfernt wird, werden alle Änderungen, die an der Zeile vorgenommen wurden, festgelegt, bevor der Fokus geändert wird.
STRG+NACH-UNTEN-TASTE Verschiebt den Fokus auf die letzte Zelle in der aktuellen Spalte.
STRG+NACH-OBEN-TASTE Verschiebt den Fokus auf die erste Zelle in der aktuellen Spalte.
STRG+NACH-RECHTS Verschiebt den Fokus auf die letzte Zelle in der aktuellen Zeile.
STRG+NACH-LINKS Verschiebt den Fokus auf die erste Zelle in der aktuellen Zeile.
STRG+POS1 Verschiebt den Fokus auf die erste Zelle im Steuerelement.
STRG+ENDE Verschiebt den Fokus auf die letzte Zelle im Steuerelement.
STRG+BILD-AB Identisch mit PAGE DOWN.
STRG+BILD-AUF Identisch mit PAGE UP.
F2 Wenn die DataGrid.IsReadOnly-Eigenschaft false und die DataGridColumn.IsReadOnly-Eigenschaft für die aktuelle Spalte false ist, wird die aktuelle Zelle im Zellbearbeitungsmodus eingefügt.
EINGABETASTE Commits alle Änderungen an der aktuellen Zelle und Zeile und verschiebt den Fokus direkt unterhalb der aktuellen Zelle auf die Zelle. Wenn sich der Fokus in der letzten Zeile befindet, werden Änderungen ohne Verschieben des Fokus vorgenommen.
ESC Wenn sich das Steuerelement im Bearbeitungsmodus befindet, wird die Bearbeitung abgebrochen und alle Änderungen zurückgesetzt, die im Steuerelement vorgenommen wurden. Wenn die zugrunde liegende Datenquelle IEditableObject implementiert, wird der Bearbeitungsmodus für die gesamte Zeile abgebrochen, wenn Sie zum zweiten Mal ESC drücken.
RÜCKTASTE Löscht das Zeichen vor dem Cursor beim Bearbeiten einer Zelle.
Delete Löscht das Zeichen nach dem Cursor beim Bearbeiten einer Zelle.
STRG+EINGABE Commits alle Änderungen an der aktuellen Zelle, ohne den Fokus zu verschieben.
STRG+A Wenn für SelectionModeExtended festgelegt ist, werden alle Zeilen in der DataGrid ausgewählt.

Auswahltasten

Wenn die SelectionMode-Eigenschaft auf Extended festgelegt ist, ändert sich das Navigationsverhalten nicht, aber das Navigieren mit der Tastatur beim Drücken der UMSCHALTTASTE (einschließlich STRG+UMSCHALT) ändert eine Mehrzeilenauswahl. Bevor die Navigation gestartet wird, markiert das Steuerelement die aktuelle Zeile als Ankerzeile. Wenn Sie beim Drücken von UMSCHALT navigieren, enthält die Auswahl alle Zeilen zwischen der Ankerzeile und der aktuellen Zeile.

Die folgenden Auswahltasten ändern die Auswahl mit mehreren Zeilen.

  • UMSCHALT+NACH-UNTEN-TASTE

  • UMSCHALT+NACH-OBEN-TASTE

  • UMSCHALT+BILD-AB

  • UMSCHALT+BILD-AUF

  • STRG+UMSCHALT+NACH-UNTEN

  • STRG+UMSCHALT+NACH-OBEN

  • STRG+UMSCHALT+POS1

  • STRG+UMSCHALT+ENDE

Standard-Mausverhalten

In der folgenden Tabelle sind die Standardmausverhalten für die DataGrid aufgeführt.

Mausaktion Beschreibung
Klicken Sie auf eine nicht ausgewählte Zeile Macht die geklickte Zeile die aktuelle Zeile, und die auf die aktuelle Zelle geklickte Zelle.
Klicken Sie auf die aktuelle Zelle Versetzt die aktuelle Zelle in den Bearbeitungsmodus.
Ziehen Sie eine Spaltenüberschriftzelle Wenn die DataGrid.CanUserReorderColumns-Eigenschaft true und die DataGridColumn.CanUserReorder-Eigenschaft für die aktuelle Spalte true ist, verschiebt sich die Spalte, damit sie an einer neuen Position abgelegt werden kann.
Ziehen eines Spaltenüberschriftentrennzeichens Wenn die DataGrid.CanUserResizeColumns-Eigenschaft true und die DataGridColumn.CanUserResize-Eigenschaft für die aktuelle Spalte true ist, ändert sich die Größe der Spalte.
Doppelklicken Sie auf ein Spaltenüberschriftentrennzeichen Wenn die DataGrid.CanUserResizeColumns-Eigenschaft true und die DataGridColumn.CanUserResize-Eigenschaft für die aktuelle Spalte true ist, wird die Spalte mithilfe des Auto- Größenmodus automatisch größengesteuert.
Klicken Sie auf eine Spaltenüberschriftzelle Wenn die DataGrid.CanUserSortColumns-Eigenschaft true und die DataGridColumn.CanUserSort-Eigenschaft für die aktuelle Spalte true ist, wird die Spalte sortiert.

Durch Klicken auf die Kopfzeile einer bereits sortierten Spalte wird die Sortierrichtung dieser Spalte umgekehrt.

Wenn Sie auf mehrere Spaltenüberschriften klicken, wird durch Drücken der UMSCHALTTASTE nach mehreren Spalten sortiert, in der auf die Reihenfolge geklickt wird.
STRG+Klicken Sie auf eine Zeile Wenn SelectionMode auf Extended festgelegt ist, ändert dies eine nicht zusammenhängende Mehrfachzeilenauswahl.

Wenn die Zeile bereits ausgewählt ist, wird die Zeile deaktiviert.
UMSCHALT+Klicken Sie auf eine Zeile Wenn SelectionMode auf Extended festgelegt ist, ändert dies eine zusammenhängende Mehrzeilenauswahl.
Klicken Sie auf eine Zeilengruppenkopfzeile Erweitert oder reduziert die Gruppe.
Klicken Sie auf die Schaltfläche "Alle auswählen" in der oberen linken Ecke der DataGrid Wenn für SelectionModeExtended festgelegt ist, werden alle Zeilen in der DataGrid ausgewählt.

Mausauswahl

Wenn die SelectionMode-Eigenschaft auf Extended festgelegt ist, wird beim Klicken auf eine Zeile, während Sie STRG oder UMSCHALT drücken, eine Mehrfachzeilenauswahl geändert.

Wenn Sie beim Drücken der STRG-TASTE auf eine Zeile klicken, ändert die Zeile den Auswahlstatus, während alle anderen Zeilen den aktuellen Auswahlzustand beibehalten. Wählen Sie dazu nicht angrenzende Zeilen aus.

Wenn Sie beim Drücken der UMSCHALTTASTE auf eine Zeile klicken, enthält die Auswahl alle Zeilen zwischen der aktuellen Zeile und einer Ankerzeile, die sich an der Position der aktuellen Zeile befindet, bevor Sie auf den Klick klicken. Nachfolgende Klicks beim Drücken der UMSCHALTTASTE ändern die aktuelle Zeile, aber nicht die Verankerungszeile. Wählen Sie dazu einen Bereich angrenzender Zeilen aus.

STRG+UMSCHALT kann kombiniert werden, um nicht angrenzende Bereiche angrenzender Zeilen auszuwählen. Wählen Sie dazu den ersten Bereich mithilfe von UMSCHALT+Klick wie zuvor beschrieben aus. Nachdem der erste Zeilenbereich ausgewählt wurde, verwenden Sie STRG+Klick, um die erste Zeile im nächsten Bereich auszuwählen, und klicken Sie dann auf die letzte Zeile im nächsten Bereich, während Sie STRG+UMSCHALT drücken.

Weitere Informationen