让ListView显示所有项目?

时间:2017-04-03 14:09:48

标签: c# mvvm xamarin.forms

我正在构建一个针对iOS,Android以及UWP的Xamarin Forms应用程序,但这并非绝对必需。我有一个页面,它将有三个ListView控件。每个ListView都与来自数据库的项目进行数据绑定。我希望每个都能够调整大小,以便在不滚动ListView的情况下看到所有项目。相反,页面应该滚动。我已经尝试更改页面,以便列表包含在StackLayout而不是Grid中,并且还尝试了将布局和视图的VeriticalOptions设置为ExpandAndFill的各种组合,但每个组合占据屏幕的大约三分之一列表大于他们需要的(前两个,只包含几个项目)或太小(对于第三个,可能包含多个行)。

如何让视图调整大小并显示所有项目?

2 个答案:

答案 0 :(得分:1)

Having a ListView inside a ScrollView is not recommended,我建议将您的三个列表绑定到一个ListView中,然后使用TemplateSelectors和/或grouping来实现您正在寻找的外观

答案 1 :(得分:1)

您需要在ListView上设置高度才能达到固定高度。如果列表的ItemSource是动态的,我建议使用单个列表进行分组。可以在此相关主题here上找到可能对您有所帮助的一些详细信息。

如果您的列表是静态的,那么只需为每个列表视图设置ListView.Height = <appropriate size>