C# Windows应用商店应用程序列表框的PreviewKeyDown
对于Windows应用商店应用程序,是否有与C# Windows应用商店应用程序列表框的PreviewKeyDown,c#,windows-8,listbox,windows-store-apps,winrt-xaml,C#,Windows 8,Listbox,Windows Store Apps,Winrt Xaml,对于Windows应用商店应用程序,是否有与PreviewKeyDown等效的版本?它不可用 我的问题和你的完全一样 我有一个列表框,上面有一个文本框。我想使用箭头键从列表框导航到文本框。这样做的目的是,如果选择了列表框中的第一项,并且用户向上键,文本框将获得焦点 啊,狡猾。处理关键事件并不十分明显。以下是您想要的: public MainPage() { this.InitializeComponent(); Window.Current.CoreWindow.Dispatch
PreviewKeyDown
等效的版本?它不可用
我的问题和你的完全一样
我有一个列表框,上面有一个文本框。我想使用箭头键从列表框导航到文本框。这样做的目的是,如果选择了列表框中的第一项,并且用户向上键,文本框将获得焦点
啊,狡猾。处理关键事件并不十分明显。以下是您想要的:
public MainPage()
{
this.InitializeComponent();
Window.Current.CoreWindow.Dispatcher.AcceleratorKeyActivated += (s, args) =>
{
if ((args.EventType == CoreAcceleratorKeyEventType.SystemKeyDown
|| args.EventType == CoreAcceleratorKeyEventType.KeyDown)
&& (args.VirtualKey == VirtualKey.Up))
{
MoveUp();
}
else if ((args.EventType == CoreAcceleratorKeyEventType.SystemKeyDown
|| args.EventType == CoreAcceleratorKeyEventType.KeyDown)
&& (args.VirtualKey == VirtualKey.Down))
{
MoveDown();
}
};
}
private void MoveUp()
{
// this part is up to you
throw new NotImplementedException();
}
private void MoveDown()
{
// this part is up to you
throw new NotImplementedException();
}
祝你好运 应该注意的是,这不是一个重复的问题,因为上面的链接问题是针对WPF的。WPF问题也有同样的问题,关键范围!标记正确的答案是礼貌的。这真的很好。但无论哪个控件处于焦点,每次按下一个键都会触发AcceleratoryActivated事件。如何检查列表是否处于焦点?我提出了一个新问题: