Рассмотрим что-то следующее:
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<TextBlock x:Name="WrapTextBlock" Grid.Column="0" Text="123 456 789 0123 4456 123 123 123 123 1 23 123 " TextWrapping="Wrap" />
<TextBlock x:Name="NotWrapTextBlock" Grid.Column="1" Text="GGG" />
</Grid>
Этот XAML позволит WrapTextBlock текст WrapTextBlock, делая это, WrapTextBlock займет все пространство и толкнет NotWrapTextBlock вправо.
Но я хочу, чтобы WrapTextBlock занимал как можно меньше места, нажимая NotWrapTextBlock сразу после WrapTextBlock и заполняя правую сторону пустым пространством.
Что означает следующее:
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<TextBlock x:Name="WrapTextBlock" Grid.Column="0" Text="123 456 789 0123 4456 123 123 123 123 1 23 123 " TextWrapping="Wrap" />
<TextBlock x:Name="NotWrapTextBlock" Grid.Column="1" Text="GGG" />
</Grid>
Но дело в том, что теперь текст в WrapTextBlock больше не будет WrapTextBlock.
Я имею в виду что-то вроде следующего:
Когда текст слишком длинный, требуется деформация:
Когда текст достаточно короткий и не требует деформации:

