Поделиться через


KeyboardNavigationMode Перечисление

Определение

Задает возможные значения для изменения фокуса, когда происходит логический и направленный переход.

public enum class KeyboardNavigationMode
public enum KeyboardNavigationMode
type KeyboardNavigationMode = 
Public Enum KeyboardNavigationMode
Наследование
KeyboardNavigationMode

Поля

Contained 4

В зависимости от направления перехода по достижении конца или начала контейнера фокус возвращается к первому или последнему элементу, но не перемещается за начало или конец контейнера.

Continue 0

Каждый элемент получает фокус клавиатуры, если он является остановкой перехода. Переход покидает содержащий элемент, когда достигается его граница.

Cycle 2

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

Local 5

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

None 3

В данном контейнере переход с помощью клавиатуры не допускается.

Once 1

Контейнер и все его дочерние элементы как целое получают фокус лишь однажды. Либо первый дочерний элемент дерева, либо последний способный принимать фокус элемент получает фокус.

Примеры

В следующем примере создается Menu с несколькими объектами MenuItem. Присоединенное TabNavigation свойство имеет значение Cycle в Menu. Это означает, что при изменении фокуса с помощью клавиши tab в Menuэлементе фокус перемещается с каждого элемента, а при достижении последнего элемента фокус вернется к первому элементу.

<Menu KeyboardNavigation.TabNavigation="Cycle">
  <MenuItem Header="Menu Item 1" />
  <MenuItem Header="Menu Item 2" />
  <MenuItem Header="Menu Item 3" />
  <MenuItem Header="Menu Item 4" />
</Menu>
Menu navigationMenu = new Menu();
MenuItem item1 = new MenuItem();
MenuItem item2 = new MenuItem();
MenuItem item3 = new MenuItem();
MenuItem item4 = new MenuItem();

navigationMenu.Items.Add(item1);
navigationMenu.Items.Add(item2);
navigationMenu.Items.Add(item3);
navigationMenu.Items.Add(item4);

KeyboardNavigation.SetTabNavigation(navigationMenu, 
    KeyboardNavigationMode.Cycle);
Dim navigationMenu As New Menu()
Dim item1 As New MenuItem()
Dim item2 As New MenuItem()
Dim item3 As New MenuItem()
Dim item4 As New MenuItem()

navigationMenu.Items.Add(item1)
navigationMenu.Items.Add(item2)
navigationMenu.Items.Add(item3)
navigationMenu.Items.Add(item4)

KeyboardNavigation.SetTabNavigation(navigationMenu, KeyboardNavigationMode.Cycle)

Применяется к

См. также раздел