Текст в формате WPF подходит только тогда, когда слишком большой

Я пытаюсь настроить список элементов в WPF, который содержит строки случайной длины (имена людей). Большинство из них, как правило, находятся в определенном размере, но иногда вы сталкиваетесь со строкой так долго, что она выходит за пределы ее контейнера. Обычно я просто усекал его, когда он слишком длинный, но я бы скорее продемонстрировал всю строку.

Как я могу заставить текст оставаться нормальным размером, если он слишком большой, чтобы соответствовать... в этом случае масштабируйте его до соответствия?

ПРИМЕЧАНИЕ. Это не то же самое, что масштабирование всего текста в соответствии с определенным размером, который выполняется с помощью окна просмотра вокруг текста

IE: Это НЕ то, что я хочу:

<Viewbox MaxWidth="100">
    <TextBlock Text="{Binding EmployeeDisplayName, UpdateSourceTrigger=PropertyChanged}" HorizontalAlignment="Left" VerticalAlignment="Center"/>
</Viewbox>

Это делает все масштабирование слишком маленьким, а также уменьшает масштаб при слишком большом размере. Я ТОЛЬКО хочу, чтобы он уменьшался, когда слишком большой и НИКОГДА не увеличивался, когда был слишком мал...

Любые мысли?

Ответ 1

Используйте Viewbox, но установите для свойства StretchDirection значение DownOnly.

<Viewbox MaxWidth="100" StretchDirection="DownOnly">
    <TextBlock Text="{Binding EmployeeDisplayName, UpdateSourceTrigger=PropertyChanged}" HorizontalAlignment="Left" VerticalAlignment="Center"/>
</Viewbox>