如何在ListBox中禁用键导航但是要检测按键事件?

时间:2018-05-29 13:42:38

标签: c# wpf listbox keypress routed-events

我正在尝试在 scrollView.getViewTreeObserver().addOnScrollChangedListener(new ViewTreeObserver.OnScrollChangedListener() { @Override public void onScrollChanged() { if (scrollView != null) { if (scrollView.getChildAt(0).getBottom() <= (scrollView.getHeight() + scrollView.getScrollY())) { slider.setVisibility(View.VISIBLE); } else { slider.setVisibility(View.GONE); } } } }); 中禁用密钥导航。我可以使用以下代码成功完成:

ListBox

但我想为我的程序添加键盘快捷键。当我设置private void listClips_PreviewKeyDown(object sender, KeyEventArgs e) { e.Handled = true; } 时,它无法正常工作。

e.Handled = true

我如何保持它们的功能?

1 个答案:

答案 0 :(得分:1)

你不能把你的逻辑移到PreviewKeyDown处理程序吗?

private void listClips_PreviewKeyDown(object sender, KeyEventArgs e)
{
    //custom logic...
    MessageBox.Show("Key Pressed " + e.Key);

    e.Handled = true;
}

处理您想要的任何快捷方式,然后始终将Handled属性设置为true