我有DataGrids在某些网格折叠时调整大小。在默认情况下,我希望列中有两行如下:
<Grid.RowDefinitions>
<RowDefinition Height="0.65*"/>
<RowDefinition Height="0.35*"/>
</Grid.RowDefinitions>
当我在后面的代码中调整大小时,我似乎只能选择高度/宽度类型:
.RowDefinitions[i].Height = GridLength.Auto;
.ColumnDefinitions[i].Width = new GridLength(1, GridUnitType.Star);
有没有办法可以恢复原来的.65 *和.35 *?感谢。
答案 0 :(得分:1)
以下是什么问题?
.RowDefinitions[0].Height = new GridLength(0.65, GridUnitType.Star);
.RowDefinitions[1].Height = new GridLength(0.35, GridUnitType.Star);
这相当于:
<RowDefinition Height="0.65*"/>
<RowDefinition Height="0.35*"/>
答案 1 :(得分:0)
.65*
可以写成new GridLength(.65, GridUnitType.Star);
GridLength
构造函数中的第一个参数是*
前面的数字,而Height="*"
实际上是Height="1*"