Je vois un comportement étrange avec mon CheckBox
et son ordre de focus/tabulation.Checkbox perd le focus avec FocusManager.IsFocusScope = "Vrai"
premier code « travail »:
<Grid>
<Grid.RowDefinitions>
<RowDefinition />
<RowDefinition />
</Grid.RowDefinitions>
<Button Grid.Row="0" Width="100" Height="25"/>
<TabControl Grid.Row="1" >
<!--TabItem Header="tabItem1" Name="tabItem1"-->
<TabItem Header="tabItem1" Name="tabItem1" FocusManager.IsFocusScope="True">
<ScrollViewer>
<Grid>
<Grid.RowDefinitions>
<RowDefinition />
<RowDefinition />
<RowDefinition />
<RowDefinition />
</Grid.RowDefinitions>
<TextBox Grid.Row="0" />
<TextBox Grid.Row="1"/>
<CheckBox Grid.Row="2" Content="Test" />
<TextBox Grid.Row="3"/>
</Grid>
</ScrollViewer>
</TabItem>
</TabControl>
</Grid>
Si vous essayez ceci, l'ordre de tabulation fonctionne très bien - aussi longtemps que vous ne cochez pas la case correspondante. Si je vérifie le CheckBox il perd le focus et l'appui sur l'onglet suivant met le focus sur le bouton.
Si je supprime FocusManager.IsFocusScope="True"
tout fonctionne très bien.
Ma question est ce comportement voulu ou un bug?
cela fonctionnerait. mais je me demande toujours pourquoi cela arrive juste pour la case à cocher aucun autre contrôle d'entrée. – blindmeis
Il se passera également pour d'autres contrôles comme RadioButton, jetez un oeil à la réponse Weifen Luo dans le fil msdn lié, il a une bonne explication sur la raison pour laquelle cela se produit. –