Wpf 如何划分网格列?

Wpf 如何划分网格列?,wpf,layout,windows-phone-7,Wpf,Layout,Windows Phone 7,我有一个有4个分区的网格 <Grid.ColumnDefinitions> <ColumnDefinition /> <ColumnDefinition /> <ColumnDefinition /> <ColumnDefinition /> </Grid.ColumnDefinitions> 现在对于相等的

我有一个有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的比率成为可能呢?

一个整数可以在一个星号之前加一个权重(例如3*)。请参阅“语法>XAML值>星形大小”一节

在您的情况下,我建议使用3:9:4:5作为1:3:1.3:1.7的近似值。如果您愿意,也可以使用10:30:13:17

以下是一个例子:


你离得太近了

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


为什么要将比率相乘?它们可以按原样使用。@KooKiz我从来没有试过这个。但MSDN说的是“整数”。也许你是对的。
<Grid.ColumnDefinitions>
    <ColumnDefinition Width="1*" />
    <ColumnDefinition Width="3*" />
    <ColumnDefinition Width="1.3*" />
    <ColumnDefinition Width="1.7*" />
</Grid.ColumnDefinitions>