使按钮的大小为网格单元格XamForms的50%

时间:2019-04-03 14:45:38

标签: xaml xamarin.forms grid width

我正在尝试使网格单元的宽度恰好是宽度的50%,这很好。但是,我希望按钮在单元格中占50%,而不能扩展到单元格的大小。

下面的Xaml,如何将Button修改为其所在单元格宽度的50%。

            <Grid Padding="10,10,10,10">
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="*"></ColumnDefinition>
                <ColumnDefinition Width="*"></ColumnDefinition>
            </Grid.ColumnDefinitions>

            <Button Grid.Row="0" Grid.Column="0" Text="Back" Command="" BackgroundColor="Red" TextColor="White" ></Button>
            <Button Grid.Row="0" Grid.Column="1" Text="Done" Command="" BackgroundColor="Green" TextColor="White"></Button>
        </Grid>

1 个答案:

答案 0 :(得分:1)

  

如何将Button修改为其所在单元格宽度的50%。

您可以将Button放入 StackLayout 中,以使Button的宽度是 GridCell 宽度的一半。

解决方案代码:

<Grid Padding="10,10,10,10">
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="50*"></ColumnDefinition>
        <ColumnDefinition Width="50*"></ColumnDefinition>
    </Grid.ColumnDefinitions>

    <StackLayout  Grid.Row="0" Grid.Column="0" HorizontalOptions="Center">
        <Button Text="Back" Command="{Binding .}" BackgroundColor="Red" TextColor="White"  ></Button>
    </StackLayout>
    <StackLayout Grid.Row="0" Grid.Column="1" HorizontalOptions="Center">
        <Button  Text="Done" Command="{Binding .}" BackgroundColor="Green" TextColor="White"></Button>
    </StackLayout>
</Grid>

enter image description here