WPF автоматически изменяет размер шрифта до тех пор, пока он не будет помещен в родительский элемент управления - программирование
Подтвердить что ты не робот

WPF автоматически изменяет размер шрифта до тех пор, пока он не будет помещен в родительский элемент управления

У меня есть пользовательский элемент управления, корневым элементом которого является Grid.

У меня также есть ContentControl, который служит заполнителем для некоторого текста, который заполняется при загрузке данных. Этот элемент управления можно перемещать внутри пользовательского элемента управления, и поэтому его положение может быть в любом месте.

Если текст слишком длинный, чтобы вписаться в корневую сетку пользовательского элемента управления, я хочу уменьшить размер шрифта ContentControl до тех пор, пока текст не будет соответствовать.

Моя проблема в том, что я не могу найти событие, которое я могу обработать, чтобы сделать этот процесс. Я попытался использовать событие ContentControl.LayoutUpdated, однако параметр отправителя для этого всегда кажется ничем... что действительно не полезно!

Я действительно с нетерпением жду любых советов о том, как добиться этого.

Спасибо

-Frinny

4b9b3361

Ответ 1

Обертка вашего ContentControl в Viewbox, установленном только для уменьшения масштаба, сделает это для вас:

<Viewbox StretchDirection="DownOnly" Stretch="Uniform">
    <ContentControl Content="Some Text"/>
</Viewbox>