Ich versuche herauszufinden, wie man Elemente in einer Liste rankt und die Ergebnisse in einem Objekt oder einer anderen Liste speichert. Ich kenne die orderby-Methode, aber ich weiß nicht genau, wie ich eine entsprechende Rangnummer für jeden Gegenstand erstellen soll.
Zum Beispiel:
%Vor%und speichern Sie dann die Ergebnisse von niedrig zu hoch oder von hoch zu niedrig hier:
%Vor%Irgendwelche Lösungen durch LINQ?
Eine der Überladungen der Select Erweiterungsmethode gibt den Index zurück:
Projiziert jedes Element einer Sequenz in eine neue Form, indem es den Index des Elements einbindet.
Sie können es verwenden, um Ihren Rang zu erhöhen:
%Vor%Wenn Sie Dictionary als Itemsource zu Listbox setzen, verwenden Sie den folgenden Code zum Sortieren:
%Vor%Der obige Code gibt die Elemente zurück, die "a" enthalten.
Hier ist eine angehängte Eigenschaft zum Binden eines Filters:
%Vor%Wird in xaml folgendermaßen verwendet:
%Vor%Und Viewmodel:
%Vor%Ich lade eine Liste von Strings in meinem %code% , jetzt möchte ich es filtern, wenn ich Text in einem %code% eintrage. Wie kann ich es tun?
%Vor%Ich binde es in XAML mit:
ItemsSource="{Bindeelementliste}"
CollectionViewSource-Klasse kann hier helfen. Soweit ich weiß, hat es viele Möglichkeiten, Sammlungen zu filtern, zu sortieren und zu gruppieren.
%Vor%Wenn Sie keinen Filter benötigen, setzen Sie %code% auf %code% . Lesen Sie auch diesen Artikel auf Filtern