listbox - WPF: complex tab focus behavior -


my control constructed nested list boxes , tree views. each list box / tree view item contains rich text boxes , other controls.

i want define 'tab' focus behavior such when user clicks 'tab' next focusable item (according order define) become focused.

currently doesn't work accept (it works partially).

my question not specific case - rather on how define such behavior @ all. extreme example, let's want control , make focus jump between items not physically near.

anyone might know how can controlled?

joe, mechanism smarter thought, check nesting - works perfectly:

<listbox keyboardnavigation.tabnavigation="continue">     <listboxitem focusable="false">         <listbox keyboardnavigation.tabnavigation="continue">             <listbox.items>                 <listboxitem focusable="false">                     <textbox width="300" keyboardnavigation.tabindex="1" focusable="true"/>                 </listboxitem>                 <listboxitem focusable="false">                     <textbox width="300" keyboardnavigation.tabindex="2" focusable="true"/>                 </listboxitem>                 <listboxitem focusable="false">                     <textbox width="300" keyboardnavigation.tabindex="3" focusable="true"/>                 </listboxitem>             </listbox.items>         </listbox>     </listboxitem>     <listboxitem focusable="false">         <listbox keyboardnavigation.tabnavigation="continue">             <listbox.items>                 <listboxitem focusable="false">                     <textbox width="300" keyboardnavigation.tabindex="1" focusable="true"/>                 </listboxitem>                 <listboxitem focusable="false">                     <stackpanel>                         <textbox width="300" keyboardnavigation.tabindex="3" focusable="true"/>                         <border borderbrush="red">                             <listbox keyboardnavigation.tabnavigation="continue">                                 <listboxitem focusable="false">                                     <listbox keyboardnavigation.tabnavigation="continue">                                         <listbox.items>                                             <listboxitem focusable="false">                                                 <textbox width="300" keyboardnavigation.tabindex="1" focusable="true"/>                                             </listboxitem>                                             <listboxitem focusable="false">                                                 <textbox width="300" keyboardnavigation.tabindex="2" focusable="true"/>                                             </listboxitem>                                             <listboxitem focusable="false">                                                 <textbox width="300" keyboardnavigation.tabindex="3" focusable="true"/>                                             </listboxitem>                                         </listbox.items>                                     </listbox>                                 </listboxitem>                                 <listboxitem focusable="false">                                     <listbox keyboardnavigation.tabnavigation="continue">                                         <listbox.items>                                             <listboxitem focusable="false">                                                 <textbox width="300" keyboardnavigation.tabindex="1" focusable="true"/>                                             </listboxitem>                                             <listboxitem focusable="false">                                                 <textbox width="300" keyboardnavigation.tabindex="2" focusable="true"/>                                             </listboxitem>                                             <listboxitem focusable="false">                                                 <textbox width="300" keyboardnavigation.tabindex="3" focusable="true"/>                                             </listboxitem>                                         </listbox.items>                                     </listbox>                                 </listboxitem>                             </listbox>                         </border>                     </stackpanel>                 </listboxitem>                 <listboxitem focusable="false">                     <stackpanel>                         <textbox width="300" keyboardnavigation.tabindex="3" focusable="true"/>                         <border borderbrush="red">                             <listbox keyboardnavigation.tabnavigation="continue">                                 <listboxitem focusable="false">                                     <listbox keyboardnavigation.tabnavigation="continue">                                         <listbox.items>                                             <listboxitem focusable="false">                                                 <textbox width="300" keyboardnavigation.tabindex="1" focusable="true"/>                                             </listboxitem>                                             <listboxitem focusable="false">                                                 <textbox width="300" keyboardnavigation.tabindex="2" focusable="true"/>                                             </listboxitem>                                             <listboxitem focusable="false">                                                 <textbox width="300" keyboardnavigation.tabindex="3" focusable="true"/>                                             </listboxitem>                                         </listbox.items>                                     </listbox>                                 </listboxitem>                                 <listboxitem focusable="false">                                     <listbox keyboardnavigation.tabnavigation="continue">                                         <listbox.items>                                             <listboxitem focusable="false">                                                 <textbox width="300" keyboardnavigation.tabindex="1" focusable="true"/>                                             </listboxitem>                                             <listboxitem focusable="false">                                                 <textbox width="300" keyboardnavigation.tabindex="2" focusable="true"/>                                             </listboxitem>                                             <listboxitem focusable="false">                                                 <textbox width="300" keyboardnavigation.tabindex="3" focusable="true"/>                                             </listboxitem>                                         </listbox.items>                                     </listbox>                                 </listboxitem>                             </listbox>                         </border>                     </stackpanel>                 </listboxitem>             </listbox.items>         </listbox>     </listboxitem> </listbox> 

Comments

Popular posts from this blog

c++ - Convert big endian to little endian when reading from a binary file -

C#: Application without a window or taskbar item (background app) that can still use Console.WriteLine() -

unicode - Are email addresses allowed to contain non-alphanumeric characters? -