XAML .NET MAUI,有没有办法让CollectionView展开,而不是滚动?

8wtpewkr  于 2023-09-28  发布在  .NET
关注(0)|答案(2)|浏览(232)

在.NET MAUI中,如果我创建一个CollectionView,并使用~50个整数的列表填充它,则该列表在Android上以完整长度显示,而在iOS上滚动。
我怎样才能使一个CollectionView显示和它的项目数量一样长,而不必滚动?是设置任一模式的选项,还是基于操作系统?

b1zrtrql

b1zrtrql1#

首先,collectionview的默认行为是:
1.内容高度> CollectvionView的高度。例如:有10个项目,每个项目的高度为50。但是CollectvionView的高度是300。内容的高度是500,它将滚动。
1.内容高度<= CollectvionView的高度。它将以完整的长度显示。
你说:
在.NET MAUI中,如果我创建一个CollectionView,并使用~50个整数的列表填充它,则该列表在Android上以完整长度显示,而在iOS上滚动。
这是因为不同的平台具有不同的视图高度默认值。如果将项目的高度设置为50。它也将在Android上滚动。
因此,如果你想让一个CollectionView显示,并与其中的项目数量一样“长”。只需确保Content Height <= CollectvionView的Height。但我认为可滚动的CollectionView更好。

qcuzuvrc

qcuzuvrc2#

修改集合视图的默认行为并不那么简单。
但是,我认为您不需要在这里使用CollectionView。
设置了BindableLayout.ItemSource的StackLayout也会做同样的工作。(如果需要,请自行使用ScrollView Package )
CollectionView的好处,在您的情况下(50个整数的列表)可以忽略。性能将大致相同,如果不是更好。
MAUI示例:https://learn.microsoft.com/en-us/dotnet/maui/user-interface/layouts/bindablelayout#define-item-appearance

相关问题