Sortowanie kolekcji kompozytowej
Tak więc WPF nie obsługuje standardowego sortowania lub filtrowania dla widoków CompositeCollections, więc jaka byłaby najlepsza praktyka dla rozwiązania tego problemu.
Istnieją dwie lub więcej kolekcji obiektów różnych typów. Chcesz połączyć je w jedną sortowalną i filtrowalną kolekcję (bez konieczności ręcznego wprowadzania sortowania lub filtrowania).
Jednym z podejść, które rozważałem, jest utworzenie nowej kolekcji obiektów z zaledwie kilkoma podstawowymi właściwościami, w tym tymi, które chciałbym posortować kolekcję, oraz instancją obiektu każdego typu.
class MyCompositeObject
{
enum ObjectType;
DateTime CreatedDate;
string SomeAttribute;
myObjectType1 Obj1;
myObjectType2 Obj2;
{
class MyCompositeObjects : List<MyCompositeObject> { }
Następnie przejrzyj moje dwie kolekcje obiektów, aby zbudować nową kolekcję kompozytową. Jest to oczywiście metoda brutalnej siły, ale zadziała. Otrzymałbym wszystkie domyślne sortowanie i filtrowanie widoku w mojej nowej kolekcji obiektów złożonych i byłbym w stanie umieścić na nim szablon danych, aby poprawnie wyświetlać elementy listy w zależności od tego, który typ jest rzeczywiście przechowywany w tym złożonym elemencie.
Jakie są sugestie, aby zrobić to w bardziej elegancki sposób?