private void Form1_KeyDown(object sender, KeyEventArgs e)
{
if ((e.KeyCode == System.Windows.Forms.Keys.F1))
{
// Soft Key 1
// Not handled when menu is present.
}
if ((e.KeyCode == System.Windows.Forms.Keys.F2))
{
// Soft Key 2
// Not handled when menu is present.
}
if ((e.KeyCode == System.Windows.Forms.Keys.Up))
{
// Up
}
if ((e.KeyCode == System.Windows.Forms.Keys.Down))
{
// Down
}
if ((e.KeyCode == System.Windows.Forms.Keys.Left))
{
// Left
}
if ((e.KeyCode == System.Windows.Forms.Keys.Right))
{
// Right
}
if ((e.KeyCode == System.Windows.Forms.Keys.Enter))
{
// Enter
}
if ((e.KeyCode == System.Windows.Forms.Keys.D1))
{
// 1
}
if ((e.KeyCode == System.Windows.Forms.Keys.D2))
{
// 2
}
if ((e.KeyCode == System.Windows.Forms.Keys.D3))
{
// 3
}
if ((e.KeyCode == System.Windows.Forms.Keys.D4))
{
// 4
}
if ((e.KeyCode == System.Windows.Forms.Keys.D5))
{
// 5
}
if ((e.KeyCode == System.Windows.Forms.Keys.D6))
{
// 6
}
if ((e.KeyCode == System.Windows.Forms.Keys.D7))
{
// 7
}
if ((e.KeyCode == System.Windows.Forms.Keys.D8))
{
// 8
}
if ((e.KeyCode == System.Windows.Forms.Keys.D9))
{
// 9
}
if ((e.KeyCode == System.Windows.Forms.Keys.F8))
{
// *
}
if ((e.KeyCode == System.Windows.Forms.Keys.D0))
{
// 0
}
if ((e.KeyCode == System.Windows.Forms.Keys.F9))
{
// #
}
}
以上是VS自己生成的KeyDown事件代码,可是按所有数字键、*、# 均得不到正确的KeyCode 其e.KeyCode都为:ProcessKey ,e.KeyData也都为:ProcessKey e.KeyValue都为:229 Soft Key 1、Soft Key 2还都捕捉不到没有进入事件。请问要怎么在KeyDown事件中得到正确的键值呢。因为某种原因在KeyPress事件中得到的按键结果值对我来说没用。