[英]Windows Phone Adjust ColumnDefinitions
我将此网格分为三列,但我想支持两列,每列的宽度=“ 0.5 *”,一列,宽度为“ 1 *”。 列中应填充从Web服务接收的数据。 如何根据收到的数据量满足该要求?
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="0.3*" />
<ColumnDefinition Width="0.3*" />
<ColumnDefinition Width="0.3*" />
</Grid.ColumnDefinitions>
<StackPanel Grid.Column="0">
<TextBlock Text="{Binding OtherValue1Label}" />
<TextBlock Text="{Binding OtherValue1Value}" />
</StackPanel>
<StackPanel Grid.Column="1">
<TextBlock Text="{Binding OtherValue2Label}" />
<TextBlock Text="{Binding OtherValue2Value}" />
</StackPanel>
<StackPanel Grid.Column="2">
<TextBlock Text="{Binding OtherValue3Label}" />
<TextBlock Text="{Binding OtherValue3Value}" />
</StackPanel>
当只需要第一列时,可以将2nd和3rd ColumnDefinitions
的Width属性设置为0。 例如 :
//set column width to 0
var columns = MyGrid.ColumnDefinitions;
rows[1].Width = new GridLength(0);
rows[2].Width = new GridLength(0);
//set it back to 0.3*
var columns = MyGrid.ColumnDefinitions;
rows[1].Width = new GridLength(0.3, GridUnitType.Star);
rows[2].Width = new GridLength(0.3, GridUnitType.Star);
当您需要第一列和第二列时,可以采用相同的方法。 只需将第三列的宽度设置为0。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.