Viewbox 中的文本块不是多行的

Textblock in Viewbox not multiline

我在自动调整文本大小方面遇到了一些问题。我在某处读到,如果我想实现这一点,我需要将我的 textblock 放在 viewbox 中。这样做的问题是文本不会分成多行。例如 "very very very long text" 几乎不可读,但 "simpletext" 看起来还不错。

<Viewbox Grid.Row="1" Grid.Column="0" Grid.RowSpan="2" Grid.ColumnSpan="4" StretchDirection="DownOnly">
     <TextBlock 
         Text="{Binding FieldName}" VerticalAlignment="Center" HorizontalAlignment="Center"
         TextWrapping="Wrap" FontWeight="Bold" FontFamily="Nueva Std" />
</Viewbox>

提前致谢!

尝试在 TextBlock 上设置宽度(或最大宽度)。

将这些属性添加到您的文本块 TextWrapping="Wrap" - 换行 IsHyphenationEnabled="True" - 用连字符分隔单词

在这种情况下,这是另一种解决方案:采用 this class 并制作您自己的 LimitedViewbox 版本,它将有一些 LowerStretchLimit 属性。我觉得应该可以。