WPF中的大小星到底是什么意思?

最佳答案

在WPF网格中,Width="*"Height="*"表示成比例的大小。
例如:将30%分配给第1列,并将70%分配给第2列-

<ColumnDefinition Width="3*" />
<ColumnDefinition Width="7*" />

同样,对于行-
<RowDefinition Height="3*" />
<RowDefinition Height="7*" />

数字不必是整数。
如果省略RowDefinition的宽度(ColumnDefinition的高度),则表示1 *。
在此示例中,第1列的宽度是第2列的1.5倍-
<ColumnDefinition Width="1.5*" />
<ColumnDefinition />

您可以将自动调整宽度和固定宽度与*(比例)宽度混合使用;在这种情况下,*列会在计算自动调整和固定宽度后分配给其余部分-
<Grid.ColumnDefinitions>
    <ColumnDefinition Width="Auto" />  <!-- Auto-fit to content, 'Hi' -->
    <ColumnDefinition Width="50.5" />  <!-- Fixed width: 50.5 device units) -->
    <ColumnDefinition Width="69*" />   <!-- Take 69% of remainder -->
    <ColumnDefinition Width="31*"/>    <!-- Take 31% of remainder -->
</Grid.ColumnDefinitions>
<TextBlock Text="Hi" Grid.Column="0" />

08-07 12:39