使用WPF相对于窗口大小更改字体大小?

9

如果我缩小窗口,字体大小会变小,如果我放大窗口,字体大小会变大,这是否可能?

2个回答

12

把你的文本放在一个 Viewbox 内。

<Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
    <Viewbox>
        <TextBlock Text="Sizes to fit!"/>
    </Viewbox>
</Window>

现在如果我缩小窗口,它会变得更小,但是FontSize="16"没有任何效果。默认情况下,字体非常大。 - rakete
2
当然可以。如果您想要设置限制,请尝试调整ViewboxStretchDirection属性。 - CannibalSmith
1
@CannibalSmith 我也遇到了同样的问题,使用Stretch和Viewbox解决了这个问题,给你点赞。 - Jerin

2

我从未尝试过这种方法,但我想你可以通过转换器方法将文本的字体大小属性绑定到窗口大小上。不要直接绑定,因为那样会导致混乱。

另一种选择是手动处理窗口调整大小事件并将字体大小发送到每个控件...

--编辑-- 刚在Google上搜索到这篇文章,可能是你想要的。


不幸的是,转换器是用C#编写的。但我正在使用Visual Basic进行编程,并且在重写它为vb时遇到了问题。但我认为编写自己的转换器并不是很困难。 - rakete

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接