Проблема не в гиперссылке, а во вложенных элементах управления в TextBlock. Вы можете изменить его на
<TextBlock Visibility="Collapsed">
<TextBlock Text="MyText" />
</TextBlock>
и навигация по вкладке все равно будет нарушена.
Решение заключается в использовании KeyboardNavigation.TabNavigation="Once"
во внешнем текстовом блоке:
<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>
тогда все работает так, как задумано. Проблема в том, что внутренний TextBlock получает Фокус, даже если внешний элемент управления свернут. Установка KeyboardNavigation.TabNavigation
в Once
разрешает его, поскольку весь контейнер и его дочерние элементы получают фокус только один раз. ( MSDN )