Ajouter des Éléments à la zone de liste déroulante à partir d'un objet IEnumerable

J'ai un System.Timers.Timer que les mises à jour de mon formulaire de gagner les composants de l'application dans toutes les 5 secondes.

J'ai un comboBox et mondial IEnumerable<Person> liste mise à jour en everty 5 secondes.
J'ai besoin d'ajouter des personnes au nom de zone de liste déroulante. Si le nom est déjà dans la liste, je ne devrais pas ajouter.

Comment puis-je procéder?
Voici le code à l'intérieur de l'événement timer. Cela ajoute à plusieurs reprises et je ne suis pas sûr de le faire avec foreach, peut-être IEnumareble interface a un moyen plus facile.

foreach (Persons person in personsList)
{
  comboBox.Items.Add(person.Name);
}
  • Vous voulez peut-être faire de la recherche sur la liaison de données
  • Si je lier les données de la cmb.DataSource = personsList; cmb.DisplayMember = "Sujet"; Cela ne marchera pas
  • Pourquoi ne pas simplement effacer les Éléments, puis AddRange l'interface IEnumerable?
InformationsquelleAutor Yagiz Ozturk | 2011-03-15