【发布时间】:2017-06-21 16:33:13
【问题描述】:
我想创建一个包含 NEW、DELETED、COMMON 项目的分组列表。我目前是这样做的:
public class ListSortingGroupingTest
{
List<int> OldList = new List<int> { 1, 2, 3, 4, 5 };
List<int> NewList = new List<int> { 3, 4, 5, 7, 8, 9 };
public void CreateGroupedList()
{
var deleted = OldList.Except(NewList).Select(i => new { Group = "Deleted", Number = i });
var added = NewList.Except(OldList).Select(i => new { Group = "Added", Number = i});
var common = NewList.Intersect(OldList).Select(i => new { Group = "Common", Number = i});
var result = deleted.Union(added).Union(common);
}
}
这行得通。但我想知道是否有更好或更有效的方法?
最终我希望在 WPF Grouped ListView 中绑定到这个。
【问题讨论】: