当文本位于第二行时,如何在TextBlock中更改字体大小

时间:2014-02-21 13:32:00

标签: c# windows-phone

如果文本转到第二行,我正在寻找在TextBlock中更改字体大小的方法。
当文本进入第二行时,我怎么知道?
谢谢你的帮助。

2 个答案:

答案 0 :(得分:0)

您可以做的是处理TextChanged事件,并在处理程序中检查文本的长度。

如果文字为<= 20,则保留原始尺寸。如果是> 20但是<= 25,则将字体大小减少3分。依此类推,直到达到你想要支持的字符数限制,比如说50或者什么。

您可能需要禁用Textbox文字换行,以便只有一行文字。

答案 1 :(得分:0)

使用Viewbox包装可能会为您提供以下功能:

<Viewbox Stretch="Uniform" Width="50" Height="50">
    <TextBlock Text="Test" />
</Viewbox>

来源 - https://stackoverflow.com/a/13268895/1202600