Guten Tag,
ich habe eine Listbox die ich mit Objekten fülle um eine Anzeige eines Items zu erhalten, dessen Rückgabewert ein anderer ist.
Die Listbox fülle ich wie folgt:
Der Aufruf sieht dann wie folgt aus...
Um zu ermitteln welche Objekte nun selektiert worden sind(rein von der Logik her) reicht folgender Quellcode:
Nun aber möchte ich das diese Listbox mit Werten selektiert wird, die mir vorher bekannt sind.
Mein Versuch sieht ungefähr so aus:
In diesem Falle gibt es das Problem bei dem Durchlaufen der For Each Schleife, da lb.items sich nicht zu dem Object konvertieren lässt. Dies aber funktionierte bei "SelectedItems" noch gut.
Warum ist hier ein Unterschied zwischen .SelectedItems und .Items wo doch beide eine ObjectCollection haben?
Auch andere Dinge, die ich probiert habe, fanden zu keiner Lösung und im Netz finde ich nichts für MultiSelect bzgl. dieses Problems.
Mag mir da jemand helfen?
Ich danke vielmals
ich habe eine Listbox die ich mit Objekten fülle um eine Anzeige eines Items zu erhalten, dessen Rückgabewert ein anderer ist.
Die Listbox fülle ich wie folgt:
VB.NET-Quellcode
- Public Sub Listbox_Objects_Fill(ByRef lb As ListBox, ByVal aOb() As Object, ByVal sField As String)
- Try
- lb.DataSource = Nothing
- lb.Items.Clear()
- Dim dt As New DataTable
- dt.Columns.Add("Display", GetType(String))
- dt.Columns.Add("Value", GetType(Object))
- If Not aOb Is Nothing Then
- For i As Integer = aOb.GetLowerBound(0) To aOb.GetUpperBound(0)
- Dim ty As Type = aOb(i).GetType
- Dim fis() As System.Reflection.FieldInfo = ty.GetFields()
- For Each fi As System.Reflection.FieldInfo In fis
- If fi.Name = sField Then
- dt.Rows.Add(fi.GetValue(aOb(i)), aOb(i))
- Exit For
- End If
- Next
- Next
- End If
- lb.DataSource = dt
- lb.DisplayMember = "Display"
- lb.ValueMember = "Value"
- Catch ex As Exception
- 'Debug
- End Try
- End Sub
Der Aufruf sieht dann wie folgt aus...
Um zu ermitteln welche Objekte nun selektiert worden sind(rein von der Logik her) reicht folgender Quellcode:
Nun aber möchte ich das diese Listbox mit Werten selektiert wird, die mir vorher bekannt sind.
Mein Versuch sieht ungefähr so aus:
In diesem Falle gibt es das Problem bei dem Durchlaufen der For Each Schleife, da lb.items sich nicht zu dem Object konvertieren lässt. Dies aber funktionierte bei "SelectedItems" noch gut.
Warum ist hier ein Unterschied zwischen .SelectedItems und .Items wo doch beide eine ObjectCollection haben?
Auch andere Dinge, die ich probiert habe, fanden zu keiner Lösung und im Netz finde ich nichts für MultiSelect bzgl. dieses Problems.
Mag mir da jemand helfen?
Ich danke vielmals