У меня есть странное поведение элемента управления ListView в WPF.
Мы разрабатываем приложение на С#.
Я создал ListView с некоторыми элементами и установил SelectedIndex в некоторый индекс в в середине списка. Затем я щелкнул мышью в любом месте в ListView и затем перейдите с помощью клавиш Up/Dows, все работает отлично. Но если Я перемещаю фокус на другой элемент управления, а затем пытается вернуть фокус обратно в ListView управляйте программно, тогда у меня проблема.
ListView получает фокус, но когда я пытаюсь перемещаться с помощью клавиатура, текущий выбор будет отменен, и первый элемент будет выбрано и навигация начнется с первого элемента в списке.
Я настраиваю фокус на элемент управления ListView, вызывая его метод .Focus().
Похоже, что даже элемент управления ListView находится в фокусе, но на самом деле нет элементов focus, даже если SelectedIndex имеет некоторые допустимые значения.
Пожалуйста, помогите! Как я могу настроить фокус на элемент управления ListView программно предотвратить такое поведение?
Я узнаю, что мой список избранных индексов отличается от выбранного объекта. кто???
в событии selectedindex_changed я устанавливаю выбранный индекс в элемент исправления (5), но когда я нажимаю клавиши со стрелками, элемент был изменен. это означает, что выбранный индекс зафиксирован на 5, но текущий элемент (показанный с помощью точечной границы вокруг него) перемещается в положение стрелки. в любом случае мой selecteditem исправляется до 5, но мои scrollviews перемещаются в положение, в котором находится текущий элемент.
этот код находится в listView1_SelectionChanged: listView1.SelectionMode = SelectionMode.Single; listView1.SelectedIndex = 5;
у моего списка есть измененное представление:
<l:PlainView x:Key="tileView"
ItemTemplate="{StaticResource centralTile}"
ItemHeight="120" ItemWidth="130" />
Я больше не знаю о проблеме.
рассматривает