2

我需要像“Shift+Insert”一样同时捕获多个键,如何使用 System.Windows.Input.KeyEventArgs 来使用它。我写了一些代码,但它不起作用:

 private void Grid1KeyUp(object sender, KeyEventArgs e)
    {
        if (e.Key == System.Windows.Input.Key.Shift && e.Key == System.Windows.Input.Key.Insert)
        {
            //do something
        }
    }

有人可以帮我吗?

注意:在 silverlight 项目中,您不能使用“System.Windows.Forms”。

4

1 回答 1

4

而是尝试类似的东西

if (e.Shift && e.Key == System.Windows.Input.Key.Insert)
{
    //do something
}

看看KeyEventArgs 类

KeyEventArgs 指定用户按下的键以及是否同时按下了任何修饰键(CTRLALT和),与每个or事件SHIFT一起传递。KeyDownKeyUp

您还可以查看KeyEventArgs.Modifiers 属性

获取KeyDownorKeyUp事件的修饰符标志。标志指示按下了CTRLSHIFTALT键的哪个组合。

于 2013-08-11T06:36:04.063 回答