¿Cómo configuro el orden de las pestañas en WPF? Tengo un ItemsControl con algunos elementos expandidos y otros contraídos y me gustaría omitir los contraídos cuando estoy tabulando.
¿Algunas ideas?
.net
wpf
tab-ordering
keyboard-navigation
Romano
fuente
fuente
Respuestas:
Puede omitir elementos en la secuencia de pestañas configurando KeyboardNavigation.IsTabStop en el elemento en XAML.
Puede configurar un disparador que alternaría esta propiedad en función del estado expandido.
fuente
Si desea establecer explícitamente el orden de tabulación para los elementos en su formulario, se supone que la siguiente propiedad adjunta debe ayudar:
Digo "se supone que debe ayudar" porque no lo he encontrado muy confiable, aunque probablemente necesite leer más sobre cómo se pretende que se use. Solo publico esta respuesta a medias porque nadie más mencionó esta propiedad.
Tenga en cuenta que en Win RT, la propiedad es solo
TabIndex="0"
.fuente
<DockPanel Panel.ZIndex="2">
ayuda a ordenar el punto de entrada de los paneles de nivel superior.<Control KeyboardNavigation.TabIndex="0" ... />
Funciona perfectamente bien ... Por ejemplo-Le permitirá navegar a través de estos dos cuadros combinados usando la tecla TAB.
fuente
Creo que hay una solución mucho más fácil aquí, en la parte superior dentro de su control o ventana o lo que sea, podría agregar:
Esto también ignora automáticamente las pestañas contraídas.
fuente
Otra alternativa que me ha funcionado en el pasado es simplemente eliminar todas las
TabIndex
declaraciones explícitas y dejar que los controles usen el orden en el que están declarados en XAML.Esto, por supuesto, puede requerir que reordene sus controles. Pero esta es una simple operación de copiar y pegar.
fuente
Puede usar KeyboardNavigation.TabNavigation = "None" para omitir por completo la tabulación para un control específico.
fuente