如题。
我们都知道,如果我们想让一个类具有可比性并用于排序,即DataGrid,我们将实现IComparable。
但是对于 IEnumerable 我该怎么做呢?
我有一个 IEnumerable 的集合,我们想将每个 IEnumerable 相互比较并进行排序。
所以说一个List<IEnumerable<char>>
包含:
IEnumerable<char> EnumableA
包含:“d”、“e”、“f”
IEnumerable<char> EnumableB
包含:“d”、“e”、“c”
如果我们将集合绑定List<IEnumerable<char>>
到 DataGrid,当我们按 acs 顺序对它们进行排序时,顺序将是EnumableB
第一个,然后EnumableA
是第二个。
我确实想到了解决方案,例如将其存储EnumableA
到一个 implment 的对象中IComparable
,但这将需要创建另一个对象集合,这将是昂贵的。
那么是否有可能或无论如何将一个IComparable
接口和我的排序实现附加到它IEnuerable<char>
以便它可以排序?