KeyPressEventArgs的值.带有ctrl键的KeyChar
本文关键字:键的 KeyChar ctrl 带有 的值 KeyPressEventArgs | 更新日期: 2024-09-27 05:03:14
在KeyPressEvent
上,我知道如何检测CTRL键何时按下,但我想得到CTRL+[什么?]。
对于CTRL+A, 这是我的代码: 输入a、bTRL+a、CTRL+b可得到:KeyChar
=1,2CTRL+B给出2,等等。检测CTRL+Aprivate void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
if (ModifierKeys.HasFlag(Keys.Control))
{
Console.Write("(Ctrl) ");
}
Console.WriteLine(Convert.ToString(Convert.ToInt32(e.KeyChar)));
}
97
98
(Ctrl) 1
(Ctrl) 2
我的建议是使用KeyDown事件,而不是KeyPress,因为KeyPress处理已处理的输入。KeyDown处理"原始"数据(不完全,但足以满足您的目的)。KeyDown事件处理程序有一个保存所需数据的参数:KeyEventArgs