简化一排Grid Xamarin表格Xaml

时间:2019-05-27 01:26:22

标签: xaml xamarin xamarin.forms grid

有人知道一种简单的方法来定义单行网格。我有以下内容:

<Grid>
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="100"/>
        <ColumnDefinition Width="*"/>
    </Grid.ColumnDefinitions>
    <Label Text="Tester:"/>
    <Entry Grid.Column="1" />
</Grid>

很难解释,但是使用xamStrap来布局某些表单,并且由于需要标签和条目的包装,我们需要为标签和条目配对创建当前的Grid。表单上的每个标签和条目都有一个网格,这使得xaml内容视图变得非常丑陋。

在xaml中是否有任何简便或更好的方法?

3 个答案:

答案 0 :(得分:0)

您可以使用水平StackLayout / FlexLayout而不是网格。 如果您喜欢网格,还可以将此视图转换为自定义控件,以使ContentPage中的代码更短。

答案 1 :(得分:0)

您应该使用BindableLayouts来简化XAML。

对于元素,可以使用Grid或StackLayout实现。 我更喜欢使用Grid,因为您可以更好地控制元素的大小。

答案 2 :(得分:0)

网格支持将视图排列成行和列:

    <Grid>


        <Grid.RowDefinitions>
            <RowDefinition Height="150" />
        </Grid.RowDefinitions>

        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="*" />
        </Grid.ColumnDefinitions>

         <Label
            Grid.Row="2"
            Grid.Column="0"
            Text="Test"
            TextColor="White"
            VerticalTextAlignment="End" />

         </Grid>