以编程方式更改网格设置

时间:2013-01-03 22:44:50

标签: c# xaml windows-runtime winrt-xaml

我有一个看起来像这样的XAML代码

<Grid>
   <Grid.RowDefinitions>
      <RowDefinition Height="140"/>
      <RowDefinition Height="*"/>
   </Grid.RowDefinitions>
   <Grid.ColumnDefinitions>
      <ColumnDefinition x:Name="primaryColumn" Width="40*"/>
      <ColumnDefinition Width="50*"/>
   </Grid.ColumnDefinitions>
   <Grid x:Name="titlepanel">
      ...
   </Grid>
   <Grid x:Name="leftgrid" Grid.Row="1">
      ...
   </Grid>
   <Grid x:Name="rightgrid" Grid.Row="0" Grid.Column="1" Grid.RowSpan="2">
      ...
   </Grid>
</Grid>

是否可以在C#中更改右网格,使其看起来像这样

<Grid x:Name="rightgrid" Grid.Row="1" Grid.Column="1">
   ...
</Grid>

我不能只在XAML代码中设置因为有需要的情况吗?
或者我是否必须创建新页面?

1 个答案:

答案 0 :(得分:4)

在后面的代码中,要取消RowSpan rightgrid你要做的事情:

rightgrid.ClearValue(Grid.RowSpanProperty);

同样,要将Row设置为1,您需要:

rightgrid.SetValue(Grid.RowProperty, 1);

来自MSDN: