Как я могу разделить столбцы сетки?

У меня есть сетка с 4 разделами.

<Grid.ColumnDefinitions>
            <ColumnDefinition />
            <ColumnDefinition />
            <ColumnDefinition />
            <ColumnDefinition />
        </Grid.ColumnDefinitions>

Теперь для равного разделения мы можем использовать это,

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

Но мое требование состоит в том, чтобы разделить с соотношением. Как я могу сделать это с соотношением 1:3:1,3: 1,7

2 ответа

Решение

Вы были так близко!

<Grid.ColumnDefinitions>
    <ColumnDefinition Width="1*" />
    <ColumnDefinition Width="3*" />
    <ColumnDefinition Width="1.3*" />
    <ColumnDefinition Width="1.7*" />
</Grid.ColumnDefinitions>

Целое число может предшествовать звезде, чтобы сделать вес одного (например, 3*). См. MSDN: Свойство ColumnDefinition.Width, Синтаксис раздела> Значения XAML> Размер звезды.

В вашем случае я предлагаю использовать 3:9:4:5 в качестве приблизительного значения 1: 3: 1,3: 1,7. Вы также можете использовать 10:30:13:17, если хотите.

Вот пример, взятый из MSDN: Grid Class:

<Grid.RowDefinitions>
    <RowDefinition Height="2*" />
    <RowDefinition Height="*"/>
</Grid.RowDefinitions>
Другие вопросы по тегам