C# ListView未使用Xamarin表单正确呈现

C# ListView未使用Xamarin表单正确呈现,c#,xaml,listview,xamarin,xamarin.forms,C#,Xaml,Listview,Xamarin,Xamarin.forms,自从上次我为移动设备做一些开发以来,已经有一段时间了。现在,我正在尝试使用Xamarin表单更新我的知识 我创建了一个Xamarin Froms项目。但是,我在将数据集合呈现为ListView内容时遇到了一些问题。我只能看到树标签的第一个元素 这是XAML代码: <?xml version="1.0" encoding="utf-8" ?> <ContentPage xmlns="http://xamarin.com/schemas/2014/forms"

自从上次我为移动设备做一些开发以来,已经有一段时间了。现在,我正在尝试使用Xamarin表单更新我的知识

我创建了一个Xamarin Froms项目。但是,我在将数据集合呈现为ListView内容时遇到了一些问题。我只能看到树标签的第一个元素

这是XAML代码:

<?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="ExampleBooks.View.BooksView"
             Title="Books">

  <ScrollView>
    <StackLayout>
      <ListView x:Name="ListViewBooks"
              ItemsSource="{Binding Books}">
        <ListView.ItemTemplate>
          <DataTemplate>
            <ViewCell>
              <ViewCell.View>
                <StackLayout Padding="10" Orientation="Vertical">
                  <Label Text="{Binding Title}" FontSize="Large" VerticalOptions="Center"></Label>
                  <Label Text="{Binding Author}" FontSize="Small"></Label>
                  <Label Text="{Binding Description}" FontSize="14"></Label>
                </StackLayout>
              </ViewCell.View>
            </ViewCell>
          </DataTemplate>
        </ListView.ItemTemplate>
      </ListView>
    </StackLayout>
  </ScrollView>
</ContentPage>

这是使用上述代码呈现数据的屏幕截图:

如您所见,自动说明标签不会显示。据我所知,ListView中嵌套的StackLayout中的所有树元素都应该显示出来。然而,我只能看到第一个

我尝试过使用填充和间距属性。但是,它们似乎都没有帮助

我是不是遗漏了什么?任何帮助/线索都会有帮助

我用的是Android模拟器。然而,在Windows Phone仿真器中也发生了同样的情况


谢谢

增加您的
列表视图的
行高

<ListView x:Name="ListViewBooks"
          ItemsSource="{Binding Books}"
          RowHeight="100">


如果您不绑定作者和描述,只将它们设置为静态文本,是否有效?顺便说一句,您不应该将ListView放在ScrollView中,这不会导致您的问题,但仍然是一个坏主意。另外,请尝试从第一个标签中删除VerticalOptions=Center。@MikePR我建议不要为您的
ListView.RowHight
设置静态值,因为不同设备上的文本大小和位置可能不同,方向和文本大小设置由设备控制。最好将
ListView.hasRows
设置为
true