Catch a key stroke before the actual control
This example shows how to catch a key stroke
before it is forwarded to the actual control.
This can be useful if you want to perform your own actions,
before the actual control gets them.
// KeyDown event of some control private void SomeControl_KeyDown(object sender, KeyEventArgs e) { // 1. Event is called directly after the key stroke // If the user hits Enter, we catch the // event and do our own things if (e.KeyCode == Keys.Enter) { // Suppress key stroke, so that // the control don't receives it e.SuppressKeyPress = true; // Perform something important... } } // KeyPress event of some control private void SomeControl_KeyPress(object sender, KeyPressEventArgs e) { // 2. Event is called during the key stroke } // KeyUp event of some control private void SomeControl_KeyUp(object sender, KeyEventArgs e) { // 3. Event is called after the key stroke }
Snippet Details
-
AuthorJonas John
-
LicensePublic domain
-
LanguageC#
-
Created08/23/2007
-
Updated08/23/2007
-
Tagsexample, gui, windows forms
Sorry folks, comments have been deactivated for now due to the large amount of spam.
Please try to post your questions or problems on a related programming board, a suitable mailing list, a programming chat-room,
or use a QA website like stackoverflow because I'm usually too busy to answer any mails related
to my code snippets. Therefore please just mail me if you found a serious bug... Thank you!
Older comments:
None.