问题描述
Xamarin Forms 的新手,在 C# ASP.Net MVC 背景中有很多背景。我想知道 Xamarin Forms 中将更复杂的数据模型传递给 xaml 视图的最佳模式是什么。我想要实现的是传递以下数据模型:
String DateHeader
ObservableCollection<CustomObject>
String DateHeader
ObservableCollection<CustomObject>
String DateHeader
ObservableCollection<CustomObject>
String DateHeader
ObservableCollection<CustomObject>
String DateHeader
ObservableCollection<CustomObject>
到 RefreshView 集合:
<RefreshView IsRefreshing="{Binding IsRefreshing}" Command="{Binding GetCustomObjectModelCommand}">
<CollectionView ItemsSource="{Binding CustomObjectModel}">
<CollectionView.ItemsLayout>
<LinearItemsLayout Orientation="Vertical"/>
</CollectionView.ItemsLayout>
<CollectionView.ItemTemplate>
<DataTemplate>
<StackLayout Padding="10">
// Data goes here
</StackLayout>
</DataTemplate>
</CollectionView.ItemTemplate>
</CollectionView>
</RefreshView>
我目前有一个单 ObservableCollection 回传和绑定工作正常的模型。在 ASP.Net MVC 中,我只在视图中使用 each 和 loop,但试图弄清楚如何在 Xamarin Forms 中实现,因为视图逻辑较少。
UI 输出的目标类似于:
日期标题
- 列出集合项
- 列出集合项
- 列出集合项
- 列出集合项
- 列出集合项
日期标题
- 列出集合项
- 列出集合项
- 列出集合项
- 列出集合项
- 列出集合项
日期标题
- 列出集合项
- 列出集合项
- 列出集合项
- 列出集合项
- 列出集合项
等等....
解决方法
我认为您可以在 CollectionView 中使用分组功能
https://docs.microsoft.com/en-us/xamarin/xamarin-forms/user-interface/collectionview/grouping