WPF自动调整字体大小,直到它适合父控件

Fri*_*ale 18 wpf font-size wpf-controls

我有一个用户控件谁的根元素是一个Grid.

我还有一个ContentControl,它作为一个占位符,用于加载数据时填充的一些文本.此控件可以在用户控件中移动,因此它的位置可以在任何位置.

如果文本太长而无法放入用户控件的根网格中,我想减小ContentControl的字体大小,直到文本适合.

我的问题是我似乎无法找到我可以处理的事件来完成这个过程.我尝试使用ContentControl.LayoutUpdated事件;但是,这个的sender参数似乎总是没有...这实际上没有用!

我真的很期待有关如何实现这一目标的任何建议.

谢谢

-Frinny

Joh*_*wen 33

将您ContentControlViewbox设置包装为仅向下缩小将为您执行此操作:

<Viewbox StretchDirection="DownOnly" Stretch="Uniform">
    <ContentControl Content="Some Text"/>
</Viewbox>
Run Code Online (Sandbox Code Playgroud)