Ich zeige den Inhalt einer Tabelle in der Datenbank mithilfe einer ListBox an. Jedes Listbox-Element wird mit der Text-Eigenschaft gefüllt, die auf einen angezeigten Namen und die Value-Eigenschaft auf die eindeutige ID-Spalte festgelegt ist. Die Datenbankstruktur aussehen könnte, ähnlich der folgenden:Verwenden von Linq zum Konvertieren von ListBox-Elementen Werte in int
CREATE TABLE GENERIC { FRIENDLY_NAME TEXT, ID INT }
Ich habe versucht, für fast eine Stunde, um die Elemente der Listbox in einen int [] mithilfe von LINQ und letztlich nicht zu konvertieren. Es ist auch wichtig, zwischen den ausgewählten und nicht ausgewählten Elementen zu unterscheiden. Hier ist, was ich am Ende schrieb:
System.Collections.Generic.LinkedList<int>
selected = new LinkedList<int>(),
notSelected = new LinkedList<int>();
foreach (ListItem item in PhotoGalleryEdit_PhotoShoots.Items)
{
if (item.Selected)
selected.AddFirst(Convert.ToInt32(item.Value));
else
notSelected.AddFirst(Convert.ToInt32(item.Value));
}
int []arraySelected = selected.ToArray();
int []arrayNotSelected = notSelected.ToArray();
Kann jemand zeigen, wie dies in LINQ getan wird?
(Ich schreibe alle meine Code in C#, aber keine Antworten in VB geschrieben wäre mehr als willkommen sein)
Das funktioniert bei mir und ist sehr sauber. – hannasm