private void RemplirPosteSource() { try { if (_listeDesPosteSourceInitiale != null && _listeDesPosteSourceInitiale.Count != 0) { Cbo_PosteSource.ItemsSource = _listeDesPosteSourceInitiale.OrderBy(t => t.LIBELLE).ToList(); Cbo_PosteSource.IsEnabled = true; Cbo_PosteSource.SelectedValuePath = "PK_ID"; Cbo_PosteSource.DisplayMemberPath = "LIBELLE"; return; } Galatee.Silverlight.ServiceAccueil.AcceuilServiceClient service = new Galatee.Silverlight.ServiceAccueil.AcceuilServiceClient(Utility.ProtocoleFacturation(), Utility.EndPoint("Accueil")); service.ChargerPosteSourceAsync(); service.ChargerPosteSourceCompleted += (s, args) => { if (args.Error != null && args.Cancelled) { return; } _listeDesPosteSourceInitiale.Clear(); List <CsPosteSource> _listeDesPostesExistant = new List <CsPosteSource>(); CsPosteSource st = null; foreach (ServiceAccueil.CsPosteSource item in args.Result) { st = new CsPosteSource(); st.PK_ID = item.PK_ID; st.CODE = item.CODE; st.LIBELLE = item.LIBELLE; _listeDesPostesExistant = _listeDesPosteSourceInitiale.Where(t => t.LIBELLE == st.LIBELLE).ToList(); if (_listeDesPostesExistant == null || _listeDesPostesExistant.Count == 0) { _listeDesPosteSourceInitiale.Add(st); } } Cbo_PosteSource.ItemsSource = _listeDesPosteSourceInitiale.OrderBy(t => t.LIBELLE).ToList(); Cbo_PosteSource.IsEnabled = true; Cbo_PosteSource.SelectedValuePath = "PK_ID"; Cbo_PosteSource.DisplayMemberPath = "LIBELLE"; if (ObjetSelectionnee != null && ObjetSelectionnee.FK_IDPOSTESOURCE > 0) { Cbo_PosteSource.SelectedItem = _listeDesPosteSourceInitiale.FirstOrDefault(t => t.PK_ID == ObjetSelectionnee.FK_IDPOSTESOURCE); } }; service.CloseAsync(); } catch (Exception ex) { throw ex; } }