IDataGridViewEditingControl.EditingControlWantsInputKey Method (Keys, Boolean)


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.

Determines whether the specified key is a regular input key that the editing control should process or a special key that the DataGridView should process.

Namespace:   System.Windows.Forms
Assembly:  System.Windows.Forms (in System.Windows.Forms.dll)

bool EditingControlWantsInputKey(
	Keys keyData,
	bool dataGridViewWantsInputKey


Type: System.Windows.Forms.Keys

A Keys that represents the key that was pressed.

Type: System.Boolean

true when the DataGridView wants to process the Keys in keyData; otherwise, false.

Return Value

Type: System.Boolean

true if the specified key is a regular input key that should be handled by the editing control; otherwise, false.

An editing control implements this method to determine which input keys should be processed by the control, and which input keys should be processed by the DataGridView.

The EditingControlWantsInputKey method is called by the DataGridView. The DataGridView will pass in true for dataGridViewWantsInputKey when it can process the keyData. If the editing control can let the DataGridView handle the keyData, EditingControlWantsInputKey should return false when dataGridViewWantsInputKey is true. Other implementations of EditingControlWantsInputKey may ignore a dataGridViewWantsInputKey value of true and handle the keyData in the editing control.

The following code example provides an implementation of this member. This example is part of a larger example available in How to: Host Controls in Windows Forms DataGridView Cells.

// Implements the IDataGridViewEditingControl.EditingControlWantsInputKey 
// method.
public bool EditingControlWantsInputKey(
    Keys key, bool dataGridViewWantsInputKey)
    // Let the DateTimePicker handle the keys listed.
    switch (key & Keys.KeyCode)
        case Keys.Left:
        case Keys.Up:
        case Keys.Down:
        case Keys.Right:
        case Keys.Home:
        case Keys.End:
        case Keys.PageDown:
        case Keys.PageUp:
            return true;
            return !dataGridViewWantsInputKey;

.NET Framework
Available since 2.0
Return to top