Подтвердить что ты не робот

Можно ли использовать процентные значения в XAML?

В html можно сказать width = "20%". Конечно, это не допускается в XAML. Кто-нибудь знает, почему это так или есть способ получить поддержку процентных значений в XAML?

4b9b3361

Ответ 1

Grid ColumnDefinitions и RowDefinitions позволяют использовать пропорциональные единицы (в дополнение к фиксированным пикселям и авто).

Вот два примера:

<Grid.ColumnDefinitions>
  <ColumnDefinition Width="Auto" />
  <ColumnDefinition Width="20" />
  <ColumnDefinition Width="*" />
  <ColumnDefinition Width="*"/>
  <ColumnDefinition Width="*"/>
  <ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>

Первый столбец будет настолько большим, насколько это необходимо, чтобы соответствовать всем содержимым в столбце. Следующий столбец - 20 независимых от устройства пикселей. Оставшаяся ширина сетки будет поделена поровну между оставшимися столбцами. (100%/4 = 25% в каждом)

<Grid.ColumnDefinitions>
  <ColumnDefinition Width="*" />
  <ColumnDefinition Width="4*"/>
  <ColumnDefinition Width="4*"/>
  <ColumnDefinition Width="*"/> 
</Grid.ColumnDefinitions>

Этот код разделит 4 столбца на 10%, 40%, 40% и 10% от общей ширины сетки.