使网格更靠近页面顶部 - XAML

时间:2015-01-24 08:05:09

标签: xaml position margin

我有以下XAML:

<Grid    HorizontalAlignment="Center" VerticalAlignment="Center" Grid.Column="1" >
            <Grid.ColumnDefinitions>
                <ColumnDefinition/>
                <ColumnDefinition Width="0*"></ColumnDefinition>
            </Grid.ColumnDefinitions>
            <Grid.RowDefinitions>

                <RowDefinition Height="Auto"/>
                <RowDefinition Height="Auto"/>
            </Grid.RowDefinitions>
            <PasswordBox HorizontalAlignment="Center" Grid.Row="0" Margin="12" Width="260" Height="32" PlaceholderText="Confirm Password"  BorderBrush="#FF755CB0" BorderThickness="1" Opacity="0.9" x:Name="ConfirmPassword"/>
            <Button Content="Sign-Up" HorizontalAlignment="Center" Margin="12" Grid.Row="1"  Width="260" Height="50" Background="#FF235085" BorderBrush="#FF6749AC" BorderThickness="1" Foreground="White" Opacity="0.9" RequestedTheme="Light" Click="Register_Click"/>
        </Grid>

现在网格位于屏幕的中心,我将它更高一点,我可以用margin做到,但我不希望任何属于pixel的属性在我的页面中。有没有其他的做法呢? 感谢。

1 个答案:

答案 0 :(得分:0)

在不使用边距的情况下让网格略高于中心的最简单方法是将其放在另一个网格中。

<Grid>
    <Grid.RowDefinitions>
        <RowDefinition/>
        <RowDefinition Height="1.2*"/>
    </Grid.RowDefinitions>
    <Grid HorizontalAlignment="Center" VerticalAlignment="Top" Grid.Row="1" >
        <Grid.ColumnDefinitions>
            <ColumnDefinition/>
            <ColumnDefinition Width="0*"></ColumnDefinition>
        </Grid.ColumnDefinitions>
        <Grid.RowDefinitions>
            <RowDefinition Height="Auto"/>
            <RowDefinition Height="Auto"/>
        </Grid.RowDefinitions>
        <PasswordBox HorizontalAlignment="Center" Grid.Row="0" Margin="12" Width="260" Height="32" PlaceholderText="Confirm Password"  BorderBrush="#FF755CB0" BorderThickness="1" Opacity="0.9" x:Name="ConfirmPassword"/>
        <Button Content="Sign-Up" HorizontalAlignment="Center" Margin="12" Grid.Row="1"  Width="260" Height="50" Background="#FF235085" BorderBrush="#FF6749AC" BorderThickness="1" Foreground="White" Opacity="0.9" RequestedTheme="Light" Click="Register_Click"/>
    </Grid>
</Grid>

注意第二个RowDefinition

<RowDefinition Height="1.2*"/>

这意味着第二行将占用比第一行更多的可用空间,您可以进行调整以满足您的需求。