if ((modifiers & ModifierKeys.Alt) != ModifierKeys.None) { switch (e.Key) { case Key.Up: ShiftUpCommandToolStripMenuItem_Click(null, null); break; case Key.Down: ShiftDownCommandToolStripMenuItem_Click(null, null); break; } }
上記のようなショートカットキーを書いた場合
と、Key.Upになるはずが、Key.Systemに化けてしまいます。
どーすんのこれ?と思ったのですが、どうやら、e.SystemKeyで取得すればいいようです。
if ((modifiers & ModifierKeys.Alt) != ModifierKeys.None) { if (e.SystemKey == Key.Up) { ShiftUpCommandToolStripMenuItem_Click(null, null); } if (e.SystemKey == Key.Down) { ShiftDownCommandToolStripMenuItem_Click(null, null); } }