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