Witam,
Czy pisał ktoś może taki uniwersalny sorter dla DataGridView, który potrafiłby sortować również zbindowane kolekcje customowych obiektów? Nie może to być sorter generyczny z uwagi na fakt, że zbindowane kolekcje nie są nam znane a zwracane są jako IList z elementemi typu object. Wymanage zatem będzie użycie refleksji. Użycie takiego sortera powinno być intuicyjne i elastyczne, np:
DataGridViewSorter dataGridViewSorter = new DataGridViewSorter(dataGridView1);
dataGridViewSorter.RegisterColumnComparer(
colorDataGridViewColumn, new ColorComparer());
dataGridViewSorter.RegisterColumnComparer(
fontDataGridViewColumn, new FontComparer());
Myślę, że byłoby wygodnie, gdyby można było (tak jak na powyższym przykładzie) definiować comparatory dla różnych kolumn. Jeśli tego nie zrobimy, mechanizm powinien sprawdzać, czy elementy danej kolumny implementują IComparable i ich używać.
Być może ktoś już pisał coś takiego, dlatego zanim zacznę tworzyć własną implementację chętnie poznam wasze opinie.