ALT + 1〜ALT + 9のホットキーを検出しようとしていますが、ALTを押すとKey.Systemとして入力されます。 CTRL + NumPad0を押すと、正しいKey.NumPad0になります。Keys.Numpad0は、Altキーを押したときにKeys.Systemとして入力されます。
ALTによるprivate void MainWindow_PreviewKeyDown(object sender, KeyEventArgs e)
{
bool isAlt = Keyboard.IsKeyDown(Key.LeftAlt) || Keyboard.IsKeyDown(Key.RightAlt);
bool isCtrl = Keyboard.IsKeyDown(Key.LeftCtrl) || Keyboard.IsKeyDown(Key.RightCtrl);
string ctrlMod = string.Empty;
if (isAlt)
{
ctrlMod = "alt + " + e.Key.ToString();
}
if (isCtrl)
{
ctrlMod = "ctrl + " + e.Key.ToString();
}
Debug.WriteLine("Key is " + ctrlMod);
}
ALT + NumPad0 + NumPad9は生成します。
キーは、Ctrlキーを押しながらキーがCTRL + NumPad1
キーがCTRLである適切働くALT +システム
です+ NumPad2
キーはCtrl + NumPad3
それはWindowsのAltキーコードとは何かを持っているかもしれません – maccettura
https://social.msdn.microsoft.com/Forums/vstudio/en-US/4355ab9a-9214-4fe1-87ea-b32dfc22946c/issue-with-alt-key-and-key-down-event?for um = wpf – maccettura