我有多个 TextBlocks,其文本是通过 DynamicResource 插入的。它们都设置为 TextWrapping="Wrap"。但是在这些文本字符串中,我有不允许拆分的单词。这些词必须作为一个完整的词保留。
使用 Xaml 中的硬编码文本,通过 Textblock 内的 TextBlock 很容易解决:
<TextBlock TextWrapping="Wrap">
Example text with wrap and <TextBlock TextWrapping="NoWrap" Text=" example text without wrap"/
</TextBlock>
但是,当通过 DynamicResource 插入 Text 时,此解决方案不起作用,因为没有解析文本。
如何将 nowrap 和 wrap 组合在 DynamicResource Text 中而不将其一个接一个地拆分为多个 TextBlock?
PS:我现在创建了一个示例来演示我想要的行为(绿色)以及解决它的失败尝试(红色、橙色、深红色):
<StackPanel HorizontalAlignment="Center" Width="80" Orientation="Vertical">
<TextBlock TextWrapping="Wrap" Foreground="green">
bla1 bla2 bla3 bla4 <TextBlock TextWrapping="NoWrap" Text="Together(en)"/> bla5 bla6 longWordWhichShouldBreak
</TextBlock>
<TextBlock TextWrapping="Wrap" Foreground="red">
bla1 bla2 bla3 bla4 Together(en) bla5 bla6 longWordWhichShouldBreak
</TextBlock>
<TextBlock TextWrapping="Wrap" Foreground="orange">
bla1 bla2 bla3 bla4 Together(en) bla5 bla6 longWordWhichShouldBreak
</TextBlock>
<TextBlock TextWrapping="WrapWithOverflow" Foreground="DarkRed">
bla1 bla2 bla3 bla4 Together(en) bla5 bla6 longWordWhichShouldBreak
</TextBlock>
</StackPanel>