Windows utility.
Help for the Windows Forms programmer who need to write keyboard events handling code.
  • A Key event handling tutorial
  • A Key event handling experimentation tool
Use help menu ("?").
  • Shows a tutorial about key events handling by a Windows Forms software. It is aimed at people who started programming Windows with .NET. It explains the differences and purpose of the two families of key events handling methods.
  • Shows a Keys enum quick reference, sorted by name or by numeric value. Mask values are grouped apart.
Experimentation tool
Click on the control you want to test, then press keys.
  • Shows the key events (KeyDown, KeyUp, PreviewKeyDown, KeyPress, TextChanged, ProcessKeyPreview, ProcessKeyEventArgs, ProcessCmdKey, PreFilterMessage) received by the form and by various controls (TextBox, RadioButton, CheckBox, NumericUpDown, ListBox, CheckedListBox, ComboBox, and Button).
  • Shows event source, type, and timing.
  • Uses different background color for the various events types or categories.
  • Shows all the key events arguments properties values.
  • Gives an immediate vision of what data an event received and did not receive.
  • Parses Windows messages LParam argument. Place mouse over a cell containing a LParam value to display parsing.
  • Events sequences are separated by a thick horizontal line.
  • The control which has the focus is framed by a thick red border (TextBox on image below).
  • Its handle value and its type are displayed.
  • Current input language is displayed and can be changed from the software window (same as using language toolbar).
  • Displays the TextBox control Text property characters numeric values.
  • Gives control over the Form properties that change Button control behavior (AcceptButton, CancelButton).
  • Gives control over the ControlBox properties that have an impact on key events (MultiLine, AcceptsTab, AcceptsReturn).
  • Allows key events handling (key change and key consume) experimentation.
  • Can save displayed events grid to a html file. This file can be transmitted from a person who performs some tests on a specific keyboard to a programmer who uses another hardware, locale, or OS. This html file uses utf-8 encoding, so it can store characters from any system locale.
Go to WinformsKeyEventsAssistant download page.