C# ListView未使用Xamarin表单正确呈现
自从上次我为移动设备做一些开发以来,已经有一段时间了。现在,我正在尝试使用Xamarin表单更新我的知识 我创建了一个Xamarin Froms项目。但是,我在将数据集合呈现为ListView内容时遇到了一些问题。我只能看到树标签的第一个元素 这是XAML代码: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"
<?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
。