我正在使用WPF(xaml)中的网格,并且在ColumnDefinition中使用MinWidth属性时会出现一些奇怪的效果。例如,当我使用9个ColumnDefinition并且每个ColumnDefinition都具有'Width="*"'属性时,其中一个中间列也具有MinWidth属性,那么其他列的大小就会出错。
嗯,很难描述,但是这段xaml代码可以很好地说明:
<Grid Width="500">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="*" MinWidth="250"/>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Border Grid.Column="0" Background="Green"/>
<Border Grid.Column="1" Background="Blue"/>
<Border Grid.Column="2" Background="Red"/>
<Border Grid.Column="3" Background="Yellow"/>
<Border Grid.Column="4" Background="Purple"/>
<Border Grid.Column="5" Background="Orange"/>
<Border Grid.Column="6" Background="Azure"/>
<Border Grid.Column="7" Background="LightBlue"/>
<Border Grid.Column="9" Background="LightGreen"/>
</Grid>
当您运行此XAML代码时,您会发现前三列的宽度与后五列不同。我原本希望它们都有相同的宽度。
是否有人知道这是否是一个错误?如果有正确的方法,请告诉我。
提前致谢。