gpt4 book ai didi

c# - Xamarin 表格 : Grouping ObservableCollection

转载 作者:太空狗 更新时间:2023-10-30 01:16:47 24 4
gpt4 key购买 nike

我有一个 ListView绑定(bind)到 ObservableCollection<Request> .这是 Request类:

public class Request
{
public int Id { get; set; }
public string RequestName { get; set; }
public string Provider { get; set; }
public int Done { get; set; }
}

我在 Done 中只有 2 个可能的值: 01 . RequestDone设置为 0给一组,其他给另一组。这怎么可能?

最佳答案

这里是你将如何分组。您可能需要进一步增强它,使其更加用户友好。

分组属性

private ObservableCollection<Grouping<String, Request>> _groupedList = null;
public ObservableCollection<Grouping<String, Request>> GroupedList {
get {
return _groupedList;
}
set {
_groupedList = value;
RaisePropertyChanged(() => GroupedList);
}
}

创建列表

var list = new List<Request>();

var grouped = from Model in list
group Model by Model.Done into Group
select new Grouping<string, Request>(Group.Key, Group);

GroupedList = new ObservableCollection<Grouping<string, TModel>>(grouped);

ListView Xaml

<ListView IsGroupingEnabled="true" HasUnevenRows="true">
<ListView.GroupHeaderTemplate>
<DataTemplate>
<ViewCell>
<Label Text="{Binding Key}" VerticalOptions="Center"/>
</ViewCell>
</DataTemplate>
</ListView.GroupHeaderTemplate>
<ListView.ItemTemplate>
<DataTemplate>
<ViewCell>
<ViewCell.View>
<ContentView Padding="10">
<Label Text={Binding RequestName}" />
</ContentView>
</ViewCell.View>
</ViewCell>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>

关于c# - Xamarin 表格 : Grouping ObservableCollection,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34090409/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com