使用SelectionMode = None在ListView中获取焦点列表项

时间:2016-07-07 18:27:24

标签: win-universal-app windows-10-universal

我有一个这样的清单:

    <ListView x:Name="MyList" SelectionMode="None" KeyDown="MyList_KeyDown">
        <ListView.Items>
            <x:String>Alfa</x:String>
            <x:String>Beta</x:String>
            <x:String>Gamma</x:String>
        </ListView.Items>
    </ListView>

在按键事件中,我想知道哪个项目是焦点。但由于SelectionMode为none,因此SelectedItem为null。有什么方法可以解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

您可以尝试这样的事情:

    private void MyList_KeyDown(object sender, KeyRoutedEventArgs e)
    {
        var inFocus = FocusManager.GetFocusedElement() as ListViewItem;

        if(inFocus?.Content != null)
        {
            //Selected data is now in inFocus.Content
        }
    }