Export (0) Print
Expand All
Expand Minimize

Keys Enumeration

Specifies key codes and modifiers.

This enumeration has a FlagsAttribute attribute that allows a bitwise combination of its member values.

[Visual Basic]
<Flags>
<Serializable>
<ComVisible(True)>
Public Enum Keys
[C#]
[Flags]
[Serializable]
[ComVisible(true)]
public enum Keys
[C++]
[Flags]
[Serializable]
[ComVisible(true)]
__value public enum Keys
[JScript]
public
   Flags
 Serializable
 ComVisible(true)
enum Keys

Remarks

This class contains constants to use for processing keyboard input. Keys are identified by key values, which consist of a key code and a set of modifiers combined into a single integer value. The four left digits of a key value contain the key code (which is the same as a Windows virtual key code). The four right digits of a key value contain modifier bits for the SHIFT, CONTROL, and ALT keys.

Members

Member name Description Value
A

Supported by the .NET Compact Framework.

The A key. 65
Add

Supported by the .NET Compact Framework.

The add key. 107
Alt

Supported by the .NET Compact Framework.

The ALT modifier key. 262144
Apps

Supported by the .NET Compact Framework.

The application key (Microsoft Natural Keyboard). 93
Attn

Supported by the .NET Compact Framework.

The ATTN key. 246
B

Supported by the .NET Compact Framework.

The B key. 66
Back

Supported by the .NET Compact Framework.

The BACKSPACE key. 8
BrowserBack The browser back key (Windows 2000 or later). 166
BrowserFavorites The browser favorites key (Windows 2000 or later). 171
BrowserForward The browser forward key (Windows 2000 or later). 167
BrowserHome The browser home key (Windows 2000 or later). 172
BrowserRefresh The browser refresh key (Windows 2000 or later). 168
BrowserSearch The browser search key (Windows 2000 or later). 170
BrowserStop The browser stop key (Windows 2000 or later). 169
C

Supported by the .NET Compact Framework.

The C key. 67
Cancel

Supported by the .NET Compact Framework.

The CANCEL key. 3
Capital

Supported by the .NET Compact Framework.

The CAPS LOCK key. 20
CapsLock

Supported by the .NET Compact Framework.

The CAPS LOCK key. 20
Clear

Supported by the .NET Compact Framework.

The CLEAR key. 12
Control

Supported by the .NET Compact Framework.

The CTRL modifier key. 131072
ControlKey

Supported by the .NET Compact Framework.

The CTRL key. 17
Crsel

Supported by the .NET Compact Framework.

The CRSEL key. 247
D

Supported by the .NET Compact Framework.

The D key. 68
D0

Supported by the .NET Compact Framework.

The 0 key. 48
D1

Supported by the .NET Compact Framework.

The 1 key. 49
D2

Supported by the .NET Compact Framework.

The 2 key. 50
D3

Supported by the .NET Compact Framework.

The 3 key. 51
D4

Supported by the .NET Compact Framework.

The 4 key. 52
D5

Supported by the .NET Compact Framework.

The 5 key. 53
D6

Supported by the .NET Compact Framework.

The 6 key. 54
D7

Supported by the .NET Compact Framework.

The 7 key. 55
D8

Supported by the .NET Compact Framework.

The 8 key. 56
D9

Supported by the .NET Compact Framework.

The 9 key. 57
Decimal

Supported by the .NET Compact Framework.

The decimal key. 110
Delete

Supported by the .NET Compact Framework.

The DEL key. 46
Divide

Supported by the .NET Compact Framework.

The divide key. 111
Down

Supported by the .NET Compact Framework.

The DOWN ARROW key. 40
E

Supported by the .NET Compact Framework.

The E key. 69
End

Supported by the .NET Compact Framework.

The END key. 35
Enter

Supported by the .NET Compact Framework.

The ENTER key. 13
EraseEof

Supported by the .NET Compact Framework.

The ERASE EOF key. 249
Escape

Supported by the .NET Compact Framework.

The ESC key. 27
Execute

Supported by the .NET Compact Framework.

The EXECUTE key. 43
Exsel

Supported by the .NET Compact Framework.

The EXSEL key. 248
F

Supported by the .NET Compact Framework.

The F key. 70
F1

Supported by the .NET Compact Framework.

The F1 key. 112
F10

Supported by the .NET Compact Framework.

The F10 key. 121
F11

Supported by the .NET Compact Framework.

The F11 key. 122
F12

Supported by the .NET Compact Framework.

The F12 key. 123
F13

Supported by the .NET Compact Framework.

The F13 key. 124
F14

Supported by the .NET Compact Framework.

The F14 key. 125
F15

Supported by the .NET Compact Framework.

The F15 key. 126
F16

Supported by the .NET Compact Framework.

The F16 key. 127
F17

Supported by the .NET Compact Framework.

The F17 key. 128
F18

Supported by the .NET Compact Framework.

The F18 key. 129
F19

Supported by the .NET Compact Framework.

The F19 key. 130
F2

Supported by the .NET Compact Framework.

The F2 key. 113
F20

Supported by the .NET Compact Framework.

The F20 key. 131
F21

Supported by the .NET Compact Framework.

The F21 key. 132
F22

Supported by the .NET Compact Framework.

The F22 key. 133
F23

Supported by the .NET Compact Framework.

The F23 key. 134
F24

Supported by the .NET Compact Framework.

The F24 key. 135
F3

Supported by the .NET Compact Framework.

The F3 key. 114
F4

Supported by the .NET Compact Framework.

The F4 key. 115
F5

Supported by the .NET Compact Framework.

The F5 key. 116
F6

Supported by the .NET Compact Framework.

The F6 key. 117
F7

Supported by the .NET Compact Framework.

The F7 key. 118
F8

Supported by the .NET Compact Framework.

The F8 key. 119
F9

Supported by the .NET Compact Framework.

The F9 key. 120
FinalMode The IME final mode key. 24
G

Supported by the .NET Compact Framework.

The G key. 71
H

Supported by the .NET Compact Framework.

The H key. 72
HanguelMode The IME Hanguel mode key. (maintained for compatibility; use HangulMode) 21
HangulMode The IME Hangul mode key. 21
HanjaMode The IME Hanja mode key. 25
Help

Supported by the .NET Compact Framework.

The HELP key. 47
Home

Supported by the .NET Compact Framework.

The HOME key. 36
I

Supported by the .NET Compact Framework.

The I key. 73
IMEAceept The IME accept key. 30
IMEConvert The IME convert key. 28
IMEModeChange The IME mode change key. 31
IMENonconvert The IME nonconvert key. 29
Insert

Supported by the .NET Compact Framework.

The INS key. 45
J

Supported by the .NET Compact Framework.

The J key. 74
JunjaMode The IME Junja mode key. 23
K

Supported by the .NET Compact Framework.

The K key. 75
KanaMode The IME Kana mode key. 21
KanjiMode The IME Kanji mode key. 25
KeyCode

Supported by the .NET Compact Framework.

The bitmask to extract a key code from a key value. 65535
L

Supported by the .NET Compact Framework.

The L key. 76
LaunchApplication1 The start application one key (Windows 2000 or later). 182
LaunchApplication2 The start application two key (Windows 2000 or later). 183
LaunchMail The launch mail key (Windows 2000 or later). 180
LButton

Supported by the .NET Compact Framework.

The left mouse button. 1
LControlKey

Supported by the .NET Compact Framework.

The left CTRL key. 162
Left

Supported by the .NET Compact Framework.

The LEFT ARROW key. 37
LineFeed

Supported by the .NET Compact Framework.

The LINEFEED key. 10
LMenu

Supported by the .NET Compact Framework.

The left ALT key. 164
LShiftKey

Supported by the .NET Compact Framework.

The left SHIFT key. 160
LWin

Supported by the .NET Compact Framework.

The left Windows logo key (Microsoft Natural Keyboard). 91
M

Supported by the .NET Compact Framework.

The M key. 77
MButton

Supported by the .NET Compact Framework.

The middle mouse button (three-button mouse). 4
MediaNextTrack The media next track key (Windows 2000 or later). 176
MediaPlayPause The media play pause key (Windows 2000 or later). 179
MediaPreviousTrack The media previous track key (Windows 2000 or later). 177
MediaStop The media Stop key (Windows 2000 or later). 178
Menu

Supported by the .NET Compact Framework.

The ALT key. 18
Modifiers

Supported by the .NET Compact Framework.

The bitmask to extract modifiers from a key value. -65536
Multiply

Supported by the .NET Compact Framework.

The multiply key. 106
N

Supported by the .NET Compact Framework.

The N key. 78
Next

Supported by the .NET Compact Framework.

The PAGE DOWN key. 34
NoName

Supported by the .NET Compact Framework.

A constant reserved for future use. 252
None

Supported by the .NET Compact Framework.

No key pressed. 0
NumLock

Supported by the .NET Compact Framework.

The NUM LOCK key. 144
NumPad0

Supported by the .NET Compact Framework.

The 0 key on the numeric keypad. 96
NumPad1

Supported by the .NET Compact Framework.

The 1 key on the numeric keypad. 97
NumPad2

Supported by the .NET Compact Framework.

The 2 key on the numeric keypad. 98
NumPad3

Supported by the .NET Compact Framework.

The 3 key on the numeric keypad. 99
NumPad4

Supported by the .NET Compact Framework.

The 4 key on the numeric keypad. 100
NumPad5

Supported by the .NET Compact Framework.

The 5 key on the numeric keypad. 101
NumPad6

Supported by the .NET Compact Framework.

The 6 key on the numeric keypad. 102
NumPad7

Supported by the .NET Compact Framework.

The 7 key on the numeric keypad. 103
NumPad8

Supported by the .NET Compact Framework.

The 8 key on the numeric keypad. 104
NumPad9

Supported by the .NET Compact Framework.

The 9 key on the numeric keypad. 105
O

Supported by the .NET Compact Framework.

The O key. 79
Oem8 OEM specific. 223
OemBackslash The OEM angle bracket or backslash key on the RT 102 key keyboard (Windows 2000 or later). 226
OemClear

Supported by the .NET Compact Framework.

The CLEAR key. 254
OemCloseBrackets The OEM close bracket key on a US standard keyboard (Windows 2000 or later). 221
Oemcomma The OEM comma key on any country/region keyboard (Windows 2000 or later). 188
OemMinus The OEM minus key on any country/region keyboard (Windows 2000 or later). 189
OemOpenBrackets The OEM open bracket key on a US standard keyboard (Windows 2000 or later). 219
OemPeriod The OEM period key on any country/region keyboard (Windows 2000 or later). 190
OemPipe The OEM pipe key on a US standard keyboard (Windows 2000 or later). 220
Oemplus The OEM plus key on any country/region keyboard (Windows 2000 or later). 187
OemQuestion The OEM question mark key on a US standard keyboard (Windows 2000 or later). 191
OemQuotes The OEM singled/double quote key on a US standard keyboard (Windows 2000 or later). 222
OemSemicolon The OEM semicolon key on a US standard keyboard (Windows 2000 or later). 186
Oemtilde The OEM tilde key on a US standard keyboard (Windows 2000 or later). 192
P

Supported by the .NET Compact Framework.

The P key. 80
Pa1

Supported by the .NET Compact Framework.

The PA1 key. 253
PageDown

Supported by the .NET Compact Framework.

The PAGE DOWN key. 34
PageUp

Supported by the .NET Compact Framework.

The PAGE UP key. 33
Pause

Supported by the .NET Compact Framework.

The PAUSE key. 19
Play

Supported by the .NET Compact Framework.

The PLAY key. 250
Print

Supported by the .NET Compact Framework.

The PRINT key. 42
PrintScreen

Supported by the .NET Compact Framework.

The PRINT SCREEN key. 44
Prior

Supported by the .NET Compact Framework.

The PAGE UP key. 33
ProcessKey

Supported by the .NET Compact Framework.

The PROCESS KEY key. 229
Q

Supported by the .NET Compact Framework.

The Q key. 81
R

Supported by the .NET Compact Framework.

The R key. 82
RButton

Supported by the .NET Compact Framework.

The right mouse button. 2
RControlKey

Supported by the .NET Compact Framework.

The right CTRL key. 163
Return

Supported by the .NET Compact Framework.

The RETURN key. 13
Right

Supported by the .NET Compact Framework.

The RIGHT ARROW key. 39
RMenu

Supported by the .NET Compact Framework.

The right ALT key. 165
RShiftKey

Supported by the .NET Compact Framework.

The right SHIFT key. 161
RWin

Supported by the .NET Compact Framework.

The right Windows logo key (Microsoft Natural Keyboard). 92
S

Supported by the .NET Compact Framework.

The S key. 83
Scroll

Supported by the .NET Compact Framework.

The SCROLL LOCK key. 145
Select

Supported by the .NET Compact Framework.

The SELECT key. 41
SelectMedia The select media key (Windows 2000 or later). 181
Separator

Supported by the .NET Compact Framework.

The separator key. 108
Shift

Supported by the .NET Compact Framework.

The SHIFT modifier key. 65536
ShiftKey

Supported by the .NET Compact Framework.

The SHIFT key. 16
Snapshot

Supported by the .NET Compact Framework.

The PRINT SCREEN key. 44
Space

Supported by the .NET Compact Framework.

The SPACEBAR key. 32
Subtract

Supported by the .NET Compact Framework.

The subtract key. 109
T

Supported by the .NET Compact Framework.

The T key. 84
Tab

Supported by the .NET Compact Framework.

The TAB key. 9
U

Supported by the .NET Compact Framework.

The U key. 85
Up

Supported by the .NET Compact Framework.

The UP ARROW key. 38
V

Supported by the .NET Compact Framework.

The V key. 86
VolumeDown The volume down key (Windows 2000 or later). 174
VolumeMute The volume mute key (Windows 2000 or later). 173
VolumeUp The volume up key (Windows 2000 or later). 175
W

Supported by the .NET Compact Framework.

The W key. 87
X

Supported by the .NET Compact Framework.

The X key. 88
XButton1

Supported by the .NET Compact Framework.

The first x mouse button (five-button mouse). 5
XButton2

Supported by the .NET Compact Framework.

The second x mouse button (five-button mouse). 6
Y

Supported by the .NET Compact Framework.

The Y key. 89
Z

Supported by the .NET Compact Framework.

The Z key. 90
Zoom

Supported by the .NET Compact Framework.

The ZOOM key. 251

Example

[Visual Basic] 
' Boolean flag used to determine when a character other than a number is entered.
Private nonNumberEntered As Boolean = False
   
   
' Handle the KeyDown event to determine the type of character entered into the control.
Private Sub textBox1_KeyDown(sender As Object, e As System.Windows.Forms.KeyEventArgs) _
     Handles textBox1.KeyDown
    ' Initialize the flag to false.
    nonNumberEntered = False
  
    ' Determine whether the keystroke is a number from the top of the keyboard.
    If e.KeyCode < Keys.D0 OrElse e.KeyCode > Keys.D9 Then
        ' Determine whether the keystroke is a number from the keypad.
        If e.KeyCode < Keys.NumPad0 OrElse e.KeyCode > Keys.NumPad9 Then
            ' Determine whether the keystroke is a backspace.
            If e.KeyCode <> Keys.Back Then
                ' A non-numerical keystroke was pressed. 
                ' Set the flag to true and evaluate in KeyPress event.
                nonNumberEntered = True
            End If
        End If
    End If
End Sub 'textBox1_KeyDown
   
   
' This event occurs after the KeyDown event and can be used 
' to prevent characters from entering the control.
Private Sub textBox1_KeyPress(sender As Object, e As System.Windows.Forms.KeyPressEventArgs) _
    Handles textBox1.KeyPress
    ' Check for the flag being set in the KeyDown event.
    If nonNumberEntered = True Then
        ' Stop the character from being entered into the control since it is non-numerical.
        e.Handled = True
    End If
End Sub 'textBox1_KeyPress
End Class 'Form1 

[C#] 
// Boolean flag used to determine when a character other than a number is entered.
private bool nonNumberEntered = false;

// Handle the KeyDown event to determine the type of character entered into the control.
private void textBox1_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
{
    // Initialize the flag to false.
    nonNumberEntered = false;

    // Determine whether the keystroke is a number from the top of the keyboard.
    if (e.KeyCode < Keys.D0 || e.KeyCode > Keys.D9)
    {
        // Determine whether the keystroke is a number from the keypad.
        if (e.KeyCode < Keys.NumPad0 || e.KeyCode > Keys.NumPad9)
        {
            // Determine whether the keystroke is a backspace.
            if(e.KeyCode != Keys.Back)
            {
                // A non-numerical keystroke was pressed.
                // Set the flag to true and evaluate in KeyPress event.
                nonNumberEntered = true;
            }
        }
    }
}

// This event occurs after the KeyDown event and can be used to prevent
// characters from entering the control.
private void textBox1_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
{
    // Check for the flag being set in the KeyDown event.
    if (nonNumberEntered == true)
    {
        // Stop the character from being entered into the control since it is non-numerical.
        e.Handled = true;
    }
}


[C++] 
// Boolean flag used to determine when a character other than a number is entered.
private:
bool nonNumberEntered;

// Handle the KeyDown event to determine the type of character entered into the control.
void textBox1_KeyDown(Object* /*sender*/, System::Windows::Forms::KeyEventArgs* e)
{
   // Initialize the flag to false.
   nonNumberEntered = false;

   // Determine whether the keystroke is a number from the top of the keyboard.
   if (e->KeyCode < Keys::D0 || e->KeyCode > Keys::D9)
   {
      // Determine whether the keystroke is a number from the keypad.
      if (e->KeyCode < Keys::NumPad0 || e->KeyCode > Keys::NumPad9)
      {
         // Determine whether the keystroke is a backspace.
         if(e->KeyCode != Keys::Back)
         {
            // A non-numerical keystroke was pressed.
            // Set the flag to true and evaluate in KeyPress event.
            nonNumberEntered = true;
         }
      }
   }
}

// This event occurs after the KeyDown event and can be used to prevent
// characters from entering the control.
void textBox1_KeyPress(Object* /*sender*/, System::Windows::Forms::KeyPressEventArgs* e)
{
   // Check for the flag being set in the KeyDown event.
   if (nonNumberEntered == true)
   {
      // Stop the character from being entered into the control since it is non-numerical.
      e->Handled = true;
   }
}

[JScript] No example is available for JScript. To view a Visual Basic, C#, or C++ example, click the Language Filter button Language Filter in the upper-left corner of the page.

Requirements

Namespace: System.Windows.Forms

Platforms: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family, .NET Compact Framework

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

See Also

System.Windows.Forms Namespace

Show:
© 2014 Microsoft