Условие запуска TextTrimming
состоит в том, что длина текущего текста превышает размер TextBlock
. Исходя из этого, чтобы TextTrimming
вступил в силу, вы можете сделать это двумя следующими способами:
- Установить
Width
из TextBlock
:
<TextBlock TextTrimming="CharacterEllipsis" Width="100" Text="{x:Bind Name}" .../>
Если ширина родительского контейнера TextBlock
фиксирована и не требует изменений в зависимости от размера контента, вы можете явно установить TextBlock.Width
.
Измените тип контейнера на
Grid
:
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="1*" />
</Grid.ColumnDefinitions>
<!--First column element-->
<TextBlock TextTrimming="CharacterEllipsis" Grid.Column="1" Text="{x:Bind Name}" .../>
</Grid>
Grid
и StackPanel
различны. Хотя его ширина также связана с содержимым, вы можете ограничить ширину столбца таблицы, чтобы она не превышала родительский контейнер, установив <ColumnDefinition Width="1*" />
, что также позволяет скрытно установить ширину.
Этот метод более гибкий и подходит для ситуаций, когда ширина контейнера не определена.
С уважением.