I need to include the asterisk as an allowable entry on a text box.
How can I test for this key under the KeyDown event regardless of the keyboard layout and language?
Ignoring the numeric keypad, with the Portuguese QWERTY layout this key can be tested through Keys.Shift | Keys.Oemplus. But that will not be the case for other layouts or languages.
You are using the wrong event, you should be using KeyPressed. That fires when the user presses actual typing keys. KeyDown is useless here, the virtual key gets translated to a typing key according to the keyboard layout. Hard to guess what that might be unless you translate the keystroke yourself. That’s hard.
Some code:
The \b is required to allow the user to backspace.