ich vor kurzem eine Frage auf Codereview (CodeReview Question) veröffentlicht und im Anschluss an ihre Ratschläge, die ich bin auf der Suche von einem ObservableCollection
zu einem ICollectionView
zu einem ListCollectionView
statt wie scheinbar bewegt ein ListCollectionView
hat eine bessere Filterleistung.Implenting Listcollectionview Von ObservableCollection
Was ich im Moment mache ist das;
Contracts = await ReturnContracts();
ContractsICollectionView = CollectionViewSource.GetDefaultView(Contracts);
DataContext = this;
Wo Contracts
ist die ObservableCollection
und ContractsICollectionView
ist die ICollectionView
. Wenn ich stattdessen eine ListCollectionView
benutze, bekomme ich diesen Fehler;
Konvertierung von ICollectionView in ListCollectionView nicht möglich.
Hier ist die Definition von Contracts
und ContractsListCollectionView
;
public ObservableCollection<ContractModel> Contracts;
public ListCollectionView ContractsListCollectionView { get; private set; }
Meine Frage ist, wie ich ListCollectionView
und nutzen Sie die verbesserten Filter umsetzen kann?
Danke für Ihre Antwort. Ich versuche 'ListCollectionView' zu verwenden, weil es mit großen DataSets (ich habe ungefähr 28000 zu filternde Unternehmen) eine erhöhte Leistung hat. – CBreeze
In beiden Methoden oben wird der _underlying_ Typ ListCollectionView sein. Nur im ersten Fall greifen Sie über die Schnittstelle (ICollectionView) und im zweiten Fall direkt darauf zu. Also, wenn Sie es nicht direkt verwenden und zum Beispiel nur Ihr Gitter daran binden, verwenden Sie zuerst appoint. – Evk