所有
我有简单的手风琴,有2个手风琴项目,每个项目包含4个文本框。当我选择进入手风琴项目时,为什么我不能在手风琴项目中的每个文本框中进行选项卡?几乎所有的东西都从tabindex到TabNavigation ='Local'& '周期'。
我希望能够标记手风琴项目中的所有文本框。
请求的代码:
<UserControl x:Class="Pimarc.Silverlight.Commerce.UI.View.TestView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"
d:DesignHeight="300" d:DesignWidth="400" xmlns:toolkit="http://schemas.microsoft.com/winfx/2006/xaml/presentation/toolkit">
<Grid x:Name="LayoutRoot" Background="White">
<toolkit:Accordion HorizontalAlignment="Left" Margin="30,46,0,0" Name="accordion1" VerticalAlignment="Top" Width="200">
<toolkit:AccordionItem Header="abac" IsTabStop="True" TabNavigation="Cycle">
<StackPanel>
<TextBox Name="textBox1" Width="120" TabIndex="0" />
<TextBox Name="textBox2" Width="120" TabIndex="1" />
<TextBox Name="textBox3" Width="120" TabIndex="2" />
<TextBox Name="textBox4" Width="120" TabIndex="3"/>
</StackPanel>
</toolkit:AccordionItem>
<toolkit:AccordionItem Header="bob">
<StackPanel>
<TextBox Name="textBox5" VerticalAlignment="Top" Width="120" />
<TextBox Name="textBox6" VerticalAlignment="Top" Width="120" />
<TextBox Name="textBox71" VerticalAlignment="Top" Width="120" />
<TextBox Name="textBox81" VerticalAlignment="Top" Width="120" />
</StackPanel>
</toolkit:AccordionItem>
</toolkit:Accordion>
</Grid>
答案 0 :(得分:1)
这是手风琴的一个已知问题,请参阅:Tab order of controls in Accordion control
但是有一个简单的解决方法:
您需要在TabNavigation
的帮助下设置ExpandableContentControlStyle
属性。
所以你需要创建一个样式:
<Style x:Key="TabNavigationStyle" TargetType="toolkit:ExpandableContentControl">
<Setter Property="TabNavigation" Value="Cycle" />
</Style>
并在AccordionItem
:
<toolkit:AccordionItem Header="abac" IsTabStop="True"
ExpandableContentControlStyle="{StaticResource TabNavigationStyle}">