どうすればキーボードで値を取得できますか、試してみました:
txbPinCode.Password = txbPinCode.Password + Key.NumPad7;
しかし、passwordBox の結果は "NumPad7" です。キーから「7」を取得するには?
ありがとう。
このソリューションは、テンキーのみに有効です。
MessageBox.Show( Key.NumPad7.ToString()[6].ToString());
KeyInterop.VirtualKeyFromKey() を試してください:
var keyEnum = Key.NumPad7;
var keyCode = KeyInterop.VirtualKeyFromKey(keyEnum);
char keyChar;
if((keyCode >= 96) && (keyCode <= 105))
{
//Numpad keys
keyChar = (char)('0' + keyCode - 96);
}
else
{
keyChar = (char)keyCode;
}
txbPinCode.Password = txbPinCode.Password + keyChar;