使按钮成为网格单元 XamForms 大小的 50%
Make button 50% size of grid cell XamForms
我正在尝试使网格单元正好是宽度的 50%,效果很好。但是,我希望按钮在单元格内占 50%,而不是扩展到单元格的大小。
Xaml 下面,我如何将按钮修改为它所在单元格宽度的 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>
how to I modify the Button to be 50% width of the cell it is in.
可以把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>
我正在尝试使网格单元正好是宽度的 50%,效果很好。但是,我希望按钮在单元格内占 50%,而不是扩展到单元格的大小。
Xaml 下面,我如何将按钮修改为它所在单元格宽度的 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>
how to I modify the Button to be 50% width of the cell it is in.
可以把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>