2016-12-13 6 views
0

У меня есть виды, которые перекрываются. Я использую одно представление для отображения всплывающего окна. На этом всплывающем окне находятся 3 текстовых поля и две кнопки. Внутри этого UserControl я правильно установил TabIndex. Эти представления находятся в ListModule. И они загружаются в два отдельных UserControls MainModule.TabIndex прыгает между видами

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

Таким образом, каждый элемент управления, который фокусируется клавишей табуляции, сфокусирован при использовании моего приложения.

Как я могу ограничить tabindex только моим конкретным всплывающим окном? (Не уверен, что здесь нужен какой-то код и какие части. Если да, я бы предоставил некоторые.)

ответ

0

Я понял.

Основано на this answer Я играл с KeyboardNavigation.TabNavigation в UserControl. Установив его на KeyboardNavigation.TabNavigation="Cycle", он держит табуляцию внутри моего UserControl. А затем поместите TabIndex каждого элемента управления, как обычно.

Пример:

<UserControl x:Class="ListModule.Views.AddNewItemView" 
     ... 
     xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
     mc:Ignorable="d" 
     d:DesignHeight="220" d:DesignWidth="320" 
     Background="#80FFB887" 
     KeyboardNavigation.TabNavigation="Cycle"> 

 Смежные вопросы

  • Нет связанных вопросов^_^