Вы можете синхронизировать высоту строки и ширину столбца, используя Grid.IsSharedSizeScope
и атрибут SharedSizeGroup
для ColumnDefinition
и RowDefinition
.
Я не уверен, какие элементы вам нужно синхронизировать в вашем Xaml, но пример может быть следующим:
Используемый вами родительский элемент Grid.IsSharedSizeScope = "True"
<Grid IsSharedSizeScope="true">
..
</Grid>
Это синхронизирует любые столбцы (или строки), имеющие одинаковую SharedSizeGroup в этой области (у вас может быть несколько вложенных областей).
Так что если ваш view.xaml выглядит так
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition SharedSizeGroup="column1"/>
</Grid.ColumnDefinitions>
<TextBlock Grid.Row="0" Grid.Column="0" Text="{Binding Path=Value, Mode=OneWay}"/>
<TextBlock Text="{Binding Path=Value2, Mode=OneWay}" Grid.Row="1" Grid.Column="0"/>
</Grid>
Тогда все текстовые блоки будут иметь одинаковую ширину.