You can handle ProcessKeyboardAccelerators
For example, If I intercept [Space] on a Button which has the focus :
myButton.ProcessKeyboardAccelerators += MyButton_ProcessKeyboardAccelerators;
with :
private void MyButton_ProcessKeyboardAccelerators(UIElement sender, ProcessKeyboardAcceleratorEventArgs args)
{
if (args.Key == VirtualKey.Space)
{
Console.Beep(8000, 10);
args.Handled = true;
}
}