Как названо.
Мы все знаем, что если мы хотим, чтобы класс был сопоставим и использовался при сортировке, например DataGrid, мы реализуем IComparable.
Но для IEnumerable, как я могу это сделать?
У меня есть коллекция IEnumerable, мы хотим сравнить каждый IEnumerable друг с другом и выполнить сортировку.
Итак, скажем, коллекция List<IEnumerable<char>>
, содержащая:
IEnumerable<char> EnumableA
содержит: "d", "e", "f"
IEnumerable<char> EnumableB
содержит: "д", "е", "в"
Если мы привяжем коллекцию List<IEnumerable<char>>
к DataGrid, когда мы отсортируем их в порядке acs, порядок будет EnumableB
1-й, затем EnumableA
2-й.
Я думаю о решении, таком как сохранение EnumableA
в объекте, который реализует IComparable
, но тогда это потребует создания другой коллекции объектов, что будет дорого.
Итак, возможно ли или в любом случае ПРИСОЕДИНИТЬ интерфейс IComparable
и мою реализацию сортировки к IEnuerable<char>
, чтобы его можно было сортировать?