将多个字符串和 ObservableCollection 传递并绑定到 RefreshView / CollectionView?

Passing and binding multiple Strings and ObservableCollection to RefreshView / CollectionView?

对 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 和循环,但由于视图逻辑较少,因此试图弄清楚在 Xamarin Forms 中是如何实现的。

UI 输出的目标类似于:

Date Header

  • list collection item
  • list collection item
  • list collection item
  • list collection item
  • list collection item

Date Header

  • list collection item
  • list collection item
  • list collection item
  • list collection item
  • list collection item

Date Header

  • list collection item
  • list collection item
  • list collection item
  • list collection item
  • list collection item

etc....

我认为您可以使用 CollectionView 中的分组功能

https://docs.microsoft.com/en-us/xamarin/xamarin-forms/user-interface/collectionview/grouping