Разница между KeyboardNavigationMode содержится и цикл? - PullRequest
10 голосов
/ 09 декабря 2010

Короткий вопрос - в чем реальная разница, заключенная в простые и понятные слова? ..

Выдержки из MSDN:

  • Содержится - В зависимости от направления навигации фокус возвращается к первому или последнему элементу, когда достигается конец или начало контейнера, но не перемещается за начало или конец контейнер.
  • Цикл - В зависимости от направления навигации фокус возвращается к первому или последнему элементу, когда достигается конец или начало контейнера. Фокус не может покинуть контейнер, используя логическую навигацию.

Разница заключается в последней части описания этих режимов. Но я не могу этого понять. Кто-нибудь может объяснить это более гуманно?

1 Ответ

15 голосов
/ 09 декабря 2010

Класс KeyboardNavigation определяет три прикрепленных свойства, которые позволяют модифицировать каждый из режимов навигации:

KeyboardNavigation.TabNavigation, KeyboardNavigation.DirectionalNavigation, KeyboardNavigation.ControlTabNavigation

Каждое из этих свойств определяет шесть возможных значений. Эти значения определяют, как можно выполнять навигацию в элементе управления списком (например, ListBox, listview)

например;

KeyboardNavigation.DirectionalNavigation="Contained"

используется для обозначения того, что когда я нажимаю стрелку вниз или вверх на клавиатуре для перемещения между элементами в списке, навигация останавливается на последнем элементе или первом элементе, тогда мы должны использовать противоположную кнопку для перемещения вверх или вниз.

KeyboardNavigation.DirectionalNavigation="Cycle"

используется, чтобы указать, что когда я нажимаю стрелку вниз или вверх на клавиатуре для перемещения между элементами в списке, навигация продолжается с верхнего или нижнего элемента циклическим образом

То же самое имеет место с TabNavigation, которое указывает режим навигации, когда мы нажимаем кнопку вкладки в списке

...