0

どうすればキーボードで値を取得できますか、試してみました:

   txbPinCode.Password = txbPinCode.Password + Key.NumPad7;

しかし、passwordBox の結果は "NumPad7" です。キーから「7」を取得するには?

ありがとう。

4

2 に答える 2

0

このソリューションは、テンキーのみに有効です。

MessageBox.Show( Key.NumPad7.ToString()[6].ToString());
于 2013-10-01T11:07:40.263 に答える
0

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;
于 2013-09-30T21:02:00.773 に答える