我正在使用WPF ListView,并且我想使用实际上现在可以正常工作的键盘导航。问题如下:
我在ListBox上收听SelectionChanged
在事件处理程序中,我将选定的项目带入视图(工作正常)
当我启动键盘导航时,它从列表的顶部开始,而不是从SelectedItem(这是我不想要的东西)开始。
现在的问题是:如何从SelectedItem而不是第一个Item开始键盘导航(上下箭头)?
我的事件处理程序如下所示:
protected void ListSelectionChanged
( Object sender
, SelectionChangedEventArgs args )
{
var enumerator = args.AddedItems.GetEnumerator( );
if ( enumerator.MoveNext( ) )
( sender as ListView ).ScrollIntoView( enumerator.Current );
}
提前谢谢!
最佳答案
我认为@Bolu已正确回答了您的问题。问题与项目的Focus
有关,而不与选择有关。更改SelectedItem
时,请尝试稍后添加此行:
item.Focus();