Я надеюсь, что кто-то может мне помочь ...
Джош Смит сделал отличную статью на тему «Приложения WPF с View-Model-View Model-View», и в его статью был включен пример кода .
Если вы загрузите образец кода, запустите приложение и просмотрите всех клиентов, затем выберите компанию (например, 4-ую компанию), затем нажмите «Создать нового клиента» (откроется вкладка нового клиента), а затем нажмите Вернитесь на вкладку «Все клиенты», а затем с помощью клавиатуры попробуйте переместить выбранный элемент вверх на один элемент непосредственно над текущим выбранным элементом, это не так! Вместо этого селектор снова начинается сверху.
Я не уверен, почему это происходит, но я хочу, чтобы при нажатии вверх он поднимался на один пункт вверх, а не начинался с верхней части списка. Я подозреваю, что это связано с FocusManager, но я не уверен.
Кто-нибудь знает, почему управление ведет себя таким образом? Возможно ли это, и какой подход я должен использовать, чтобы изменить этот код и заставить его не «сбрасывать» выбранный элемент?
Я реализовал проект, основанный на этом шаблоне, и по функциональным соображениям мне нужно заставить клавиатуру перемещать селектор вверх и вниз без его сброса.