The problem is not Hyperlink, but nested controls in TextBlock. You can change it to
<TextBlock Visibility="Collapsed"> <TextBlock Text="MyText" /> </TextBlock>
and Tab navigation will still be broken.
The solution is to use KeyboardNavigation.TabNavigation="Once" in an external TextBlock:
<TextBlock KeyboardNavigation.TabNavigation="Once"> <TextBlock.Style> <Style TargetType="{x:Type TextBlock}"> <Setter Property="Visibility" Value="Collapsed"/> </Style> </TextBlock.Style> <Hyperlink Focusable="False"> <TextBlock Text="test" /> </Hyperlink> </TextBlock>
then everything works as intended. The problem is that the internal TextBlock gets Focus, even if the external control crashes. Setting KeyboardNavigation.TabNavigation to Once solves it, since the entire container and its children receive focus only once. ( MSDN )
Gimno
source share