Ich möchte in der Lage sein, eine LINQ-Abfrage auf eine BindingList (Of T), die die Indizes, wo ein Listenobjekt Mitglied ist gleich einem bestimmten Wert.Get Index der übereinstimmenden Wert in Liste mit LINQ
sagen, dass ich eine Liste von einfachen Objekten der Klasse Widget haben:
Public Class widget
Public Property foo As Integer
Public Property bar As String
End Class
Dim widgetList As BindingList(Of widget)
ich die Liste in der Lage sein möchten, dass soetwas wie die unten abfragen:
Dim test As Integer = 5
Dim index = (From i In widgetList
Where i.foo = test
Select i.index).First
Derart, dass Index enthält den Index des ersten listItem wo widgetList.Item (index) .foo = 5. Was ist der beste Weg, dies zu tun? (Oder soll ich auch LINQ verwenden)
Ich habe mehr C# Methoden gesehen dies nicht in ausreichendem Maße aber ich bin zu tun au fait mit C# zu verstehen, wie sie in VB verwenden
Soweit linq berücksichtigt wird, sind C# und vb Syntax meist die gleichen. Über Ihre Frage: In Titel fragen Sie nach übereinstimmenden Werten (bedeutet, dass Sie mehr als eine Übereinstimmung erwarten), aber in dem Code, den Sie verwenden. Zuerst, was bedeutet, dass Sie nur den ersten Punkt aus ausgewählten Ergebnissen nehmen. –
Also habe ich - bearbeitet um Plural zu entfernen. Danke – Toby