【问题标题】:Disable alt functionality but not alt combined with other keyboards functionality禁用 alt 功能,但不禁用 alt 与其他键盘功能的结合
【发布时间】:2013-09-16 03:42:24
【问题描述】:

我想禁用 alt 键,所以我在窗口中添加了 PreviewKeyDown 函数,它的外观是这样的:

private void Window_PreviewKeyDown(object sender, KeyEventArgs e)
{
    if (ModifierKeys.Alt == Keyboard.Modifiers)
    {
        e.Handled = true;
    }
}

它确实禁用了 alt 功能,但 我不想 禁用 alt+其他键功能,例如 Alt+F4 或任何其他使用 alt 的组合(我不知道使用 alt 的其他组合是什么Alt+F4 旁边,如果有的话)

我该怎么做?

【问题讨论】:

    标签: c# wpf keyboard-events onkeydown


    【解决方案1】:

    检查已知的键盘事件并允许这些事件并拒绝所有其他事件不是更好吗?因为用 PreviewKeyDown 拒绝 Alt 键它不起作用,因为每次按下 alt 键时,它都会被捕获并处理,然后你才能用它做任何其他事情

    【讨论】:

    • 我不认为你是对的。这对我有用>(Keyboard.Modifiers == ModifierKeys.Alt && !(e.SystemKey == Key.F4)),禁用 alt 功能但不禁用 alt+f4 - 如果我需要写入所有组合,它可能也可以但我不知道所有可能的组合
    猜你喜欢
    • 2015-01-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-01
    • 2019-02-12
    • 2018-03-19
    • 2019-11-26
    相关资源
    最近更新 更多