Hallo Leute, ich habe eine Besitzer-Listbox erstellt, die Avatare und den Namen und die E-Mail-Adresse des Freundes hinzufügt. Ich habe ein paar Probleme. Im Grunde habe ich eine Abfrage, die die Freunde Namen und E-Mail des Freundes erhält und dann wird die Abfrage zu einer Listenfeld-Datenquelle mit 'query.ToList()' hinzugefügt. Was ich versuche, ist für jeden Freund in der Datenquelle, ich will es so, dass es ein neues Listenfeldelement erstellt.C# Wie verwende ich eine foreach-Anweisung mit einer Datenquelle?
Code:
FriendsLb.DisplayMember = "Display";
FriendsLb.ValueMember = "FirstName";
FriendsLb.ValueMember = "LastName";
FriendsLb.ValueMember = "Email";
var query = from o in Globals.DB.Friends
where o.UserEmail == Properties.Settings.Default.Email
select new
{
FirstName = o.FirstName,
LastName = o.LastName,
Email = o.Email,
Display = string.Format(" {0} {1} - ({2})", o.FirstName, o.LastName, o.Email),
};
FriendsLb.DataSource = query.ToList();
foreach (object contact in FriendsLb.DataSource))
{
FriendsLb.Items.Add(new Contacts(Properties.Resources.avatar, contact.ToString()));
}
Fehler: Irgendwelche Ideen? Dieses Prost
ist, was es aussehen sollte, wenn der Code korrekt ist:
Sie fügen keine Elemente zu Steuerelementen hinzu, die an eine DataSource gebunden sind. Doest 'Contact' enthält die Informationen, die Sie für die Anfrage/DS sammeln? – Plutonix
Haben Sie das 'if (e.index> -1) 'in Ihrem DrawItem-Ereignis von Ihrem letzten gelöschten Post hinzugefügt? – LarsTech
Nein, Kontakt erhält nur die Avatar- und Freunddetails und gibt sie zurück – richardj97