Xaml ViewCell未正确对齐并剪切部分内容-Xamarin表单

Xaml ViewCell未正确对齐并剪切部分内容-Xamarin表单,xaml,listview,xamarin,grid,xamarin.forms,Xaml,Listview,Xamarin,Grid,Xamarin.forms,我在Xamarin Forms XAML中有一个ListView,在这个ListView中,我想绘制一个包含4个标签和1个条目的网格。我的问题是,当我试图显示ListView时,它的行被叠加,而不是显示DataTemplate中ViewCell的所有内容 我不知道我的错误是什么 这是我的代码: <?xml version="1.0" encoding="UTF-8"?> <ContentPage xmlns="http://xamarin.com/schemas/2014/fo

我在Xamarin Forms XAML中有一个ListView,在这个ListView中,我想绘制一个包含4个标签和1个条目的网格。我的问题是,当我试图显示ListView时,它的行被叠加,而不是显示DataTemplate中ViewCell的所有内容

我不知道我的错误是什么

这是我的代码:

<?xml version="1.0" encoding="UTF-8"?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms" xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" x:Class="iGuideTest.ExhibitionsPage"
    Title = "{Binding titleMenu}">
<ContentPage.Content>
    <StackLayout VerticalOptions="Center" HorizontalOptions="Center">
            <Label Text="You are in the Exhibitions page" />
            <Button Text="Return to LoginPage" Command="{Binding BackCommand}" />
            <Label Text="{Binding exhibitionsList.Count}" />
        <Button Grid.Row="2" Grid.Column="0" Text="{Binding surname}" Command="{Binding Edit}" />
            <ListView x:Name="ListViewCouchbase" ItemsSource="{Binding exhibitionsList}"
                >
                <ListView.ItemTemplate>
                    <DataTemplate>
                    <ViewCell>
                                <Grid>
                                    <Grid.RowDefinitions>
                                        <RowDefinition Height="Auto" />
                                        <RowDefinition Height="Auto" />
                                        <RowDefinition Height="*" />
                                    </Grid.RowDefinitions>
                                    <Grid.ColumnDefinitions>
                                        <ColumnDefinition Width="Auto" />
                                        <ColumnDefinition Width="Auto" />
                                    </Grid.ColumnDefinitions>
                                <Label Grid.Row="0" Grid.Column="0" TextColor="#05199C" Text="{Binding title}" />
                                <Label Grid.Row="0" Grid.Column="1" TextColor="#008000" Text="{Binding userId}" />
                                <Label Grid.Row="1" Grid.Column="1" TextColor="Maroon" Text="{Binding LastUpdated}" />
                                <Label Grid.Row="1" Grid.Column="0" TextColor="Purple" Text="{Binding surname}" />
                                <Entry Grid.Row="2" Grid.Column="0" TextColor="Blue" Text="{Binding Id}" />
                                </Grid>
                    </ViewCell>
                    </DataTemplate>
                </ListView.ItemTemplate>
            </ListView>
    </StackLayout>
</ContentPage.Content>

提前感谢。

尝试使用属性:


... 
是的,我去过那里:)


只需设置ListView RowHeight=“xx”,其中xx是表示高度的某个双精度值。

因为您使用的是
网格,并且在
RowHeight
中有
自动
,所以最好将
属性设置为true


此外,网格本身具有动态大小,您可以将其
垂直选项设置为
填充

您在列表中缺少了一个
行高
。我已经设置了RowDefinition Height=“Auto”我所有的行都是相同的大小,但标签文本仍被截断。所以我不知道为什么,但是haslunterrows=“True”是正确的答案。值得指出的是,
RowHeight
影响
haslunterrows
的工作方式:第三,也是最后一点,如果开发人员将RowHeight设置为正值,则ListView中的所有行,无论其内容的高度如何,都将与RowHeight一样高,就像已将行设置为false一样