我有一个带有Text _R的按钮。当用户按下R键时,它会激活。现在,我的按钮模板通过IsPressed上的触发器更改外观。这适用于鼠标单击或空格键。 当用户按下R时,有没有办法改变外观和IsPressed触发器相同? 还有其他一些我错过的触发器吗?
我在MSDN文档中注意到了这一点。
IsPressed是一个按钮的状态,表示鼠标左键或按钮上的空格键。当IsPressed为true时,控件捕获鼠标。因此,该控件将引发鼠标事件,如MouseEnter和IsMouseDirectlyOverChanged。请注意,使用AccessText或ENTER不会更改IsPressed或捕获鼠标,但确实会引发Click事件。
答案 0 :(得分:1)
您可以捕捉键盘事件
在构造函数中添加:
EventManager.RegisterClassHandler(typeof(Window), Keyboard.KeyDownEvent, new System.Windows.Input.KeyEventHandler(keyDown), true);
并实施方法:
private void keyDown(object sender, System.Windows.Input.KeyEventArgs e)
{
if ( Keyboard.IsKeyDown(Key.R))
{
// Your code
}
}