UWP AutoSuggestBox SuggestionChosen 在通过键盘向上/向下选择第一个项目时触发

Car*_*oza 3 c# uwp

我刚刚发现当使用键盘上/下键突出显示SuggestionChosenan 中的第一个项目时会发生火灾。AutoSuggestBox

实际上,我无法选择列表中第一个之外的任何内容。

这对于鼠标来说效果很好。

键盘导航的正确方法是什么?

private async void searchboxaddpart_SuggestionChosen(AutoSuggestBox sender, AutoSuggestBoxSuggestionChosenEventArgs args)
    {
        var dw = (Item)args.SelectedItem;
        ViewModel.NavigationService.Navigate(typeof(ItemDetailPage),
            new Item()
            {
                Id = null,
                Description = dw.desc
            });
    }
Run Code Online (Sandbox Code Playgroud)

Jus*_* XL 5

QuerySubmitted您应该在 下而不是 下进行导航SuggestionChosen。后者通常只是用于更新Text控件上的。这样,箭阵就不会被打断。

private void searchboxaddpart_SuggestionChosen(AutoSuggestBox sender, AutoSuggestBoxSuggestionChosenEventArgs args)
{
    if (args.SelectedItem is Item item)
    {
        sender.Text = item.desc;
    }
}

private void searchboxaddpart_QuerySubmitted(AutoSuggestBox sender, AutoSuggestBoxQuerySubmittedEventArgs args)
{
    if (args.ChosenSuggestion != null && args.ChosenSuggestion is Item item)
    {
        ViewModel.NavigationService.Navigate(typeof(ItemDetailPage),
            new Item
            {
                Id = null,
                Description = item.desc
            });
    }
}
Run Code Online (Sandbox Code Playgroud)