如何在所有可用区域上最大化元素

时间:2018-02-11 09:50:36

标签: uwp-xaml

我有5列和3行网格。我创建了Button,需要使用此按钮填充第1列,第1行区域。我该怎么办?

2 个答案:

答案 0 :(得分:0)

您可以将Button的高度和宽度分别绑定到Grid的Row1Column1的高度和宽度。如下面的代码,

<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
    <Grid.RowDefinitions>
        <RowDefinition/>
        <RowDefinition x:Name="Row1"/>
        <RowDefinition/>
    </Grid.RowDefinitions>
    <Grid.ColumnDefinitions>
        <ColumnDefinition/>
        <ColumnDefinition x:Name="Column1" />
        <ColumnDefinition/>
        <ColumnDefinition/>
        <ColumnDefinition/>
    </Grid.ColumnDefinitions>
    <Button Grid.Row="1" Grid.Column="1" 
            Width="{Binding ActualWidth,ElementName=Column1}"
            Height="{Binding ActualHeight,ElementName=Row1}"/>
</Grid>

答案 1 :(得分:0)

只需将按钮上的HorizontalAlignmentVerticalAlignment更改为Stretch,这样该按钮就会填满网格单元格:

<Grid>
  <Grid.RowDefinitions>
    <RowDefinition/>
    <RowDefinition/>
    <RowDefinition/>
  </Grid.RowDefinitions>
  <Grid.ColumnDefinitions>
    <ColumnDefinition/>
    <ColumnDefinition/>
    <ColumnDefinition/>
    <ColumnDefinition/>
    <ColumnDefinition/>
  </Grid.ColumnDefinitions>
  <Button Grid.Row="1" Grid.Column="1" 
          HorizontalAlignment="Stretch"
          VerticalAlignment="Stretch"/>
</Grid>