我试图在WinForm上的文本框中检测到ctrl + 1键,但以下代码未检测到按下ctrl键。任何建议都会有所帮助。
private void textBox1_KeyDown(object sender, KeyPressEventArgs e)
{
if ((ModifierKeys & Keys.Control) == Keys.Control)
{
if (e.KeyChar == (char)Keys.D1)
MessageBox.Show("1 get selected");
}
}
答案 0 :(得分:1)
您的(ModifierKeys & Keys.Control)
是导致您麻烦的原因。我建议保持简单:
private void textBox1_KeyDown(object sender, KeyEventArgs e)
{
if (e.Control && e.KeyCode == Keys.D1)
{
MessageBox.Show("Selected !");
}
}
答案 1 :(得分:0)
只是一个建议,但可能是因为您比较KeyChar而不是KeyCode。 尝试
private void textBox1_KeyDown(object sender, KeyPressEventArgs e)
{
if (e.Control && e.KeyCode == Keys.D1)
{
MessageBox.Show("1 get selected");
}
}