Deci, wpf nu suportă comportamentul standard de sortare sau filtrare pentru vizualizările CompositeCollections, deci care ar fi cea mai bună practică pentru rezolvarea acestei probleme.
Există două sau mai multe colecții de obiecte de diferite tipuri. Doriți să le combinați într-o singură colecție separată și filtrabilă (cu necesitatea de a implementa manual sortarea sau filtrarea).
Una dintre abordările pe care le-am luat în considerare este să creez o colecție de obiecte noi, cu doar câteva proprietăți de bază, inclusiv cele pe care aș dori colectarea sortată și o instanță de obiect pentru fiecare tip.
class MyCompositeObject
{
enum ObjectType;
DateTime CreatedDate;
string SomeAttribute;
myObjectType1 Obj1;
myObjectType2 Obj2;
{
class MyCompositeObjects : List { }
Și apoi treceți prin cele două colecții de obiecte pentru a construi noua colecție compozită. Evident, aceasta este o metodă de forță brute, dar ar funcționa. Aș obține toate comportamentul implicit de sortare și filtrare a vederilor de pe noua mea colecție de obiecte compuse și aș fi capabil să pun un șablon de date pe acesta pentru a afișa articolele mele de listă în mod corespunzător, în funcție de tipul care este stocat efectiv în acel element compozit.
Ce sugestii există pentru a face acest lucru într-un mod mai elegant?