private void initialiserCboProfessionnel(ObservableCollection <Employe> employes, Employe employe, Departement departement) { Employe empRecherche = new Employe(); foreach (Employe emp in employes) { if (emp.Nom == employe.Nom) { empRecherche = emp; } } employes.Add(new Employe { Nom = "Tous" }); cboProfessionnel.ItemsSource = employes; cboProfessionnel.DisplayMemberPath = "idPrenomNom"; // Au cas qu'un utilisateur se connecte et qu'il est associé à aucun département, il faut enlever la fonction par défaut des filtres. cboProfessionnel.SelectedItem = departement.EstNull() ? employes[0] : employes[employes.IndexOf(empRecherche)]; cboProfessionnel.SelectionChanged += CboProfessionnel_SelectionChanged; cboProfessionnel.Width = stpnlFiltres.Width - 10; Label lblEmploye = new Label { Content = "Par professionnel" }; stpnlFiltres.Children.Add(lblEmploye); stpnlFiltres.Children.Add(cboProfessionnel); }
public ControlListePatient(GestionnaireEcrans gestionnaireEcrans, ObservableCollection <Departement> departements, ObservableCollection <Employe> employes, Departement departement, Employe employe) { InitializeComponent(); GestionnaireEcrans = gestionnaireEcrans; ControlModelListePatient controlModelListePatient = new ControlModelListePatient(gestionnaireEcrans, departement.EstNull() ? new ObservableCollection <Citoyen>(DataModelCitoyen.GetCitoyens()) : new ObservableCollection <Citoyen>(DataModelCitoyen.GetCitoyensLstPatient(employe)), departements, employes); // On met dans le datacontexte les infos qui seront liées dans le UserControl DataContext = controlModelListePatient; // Permet de sélectionner par défaut le département du professionnel dans la combobox // Je dois créer mes combobox avant de les mettre dans mon stackpanel puisque l'event selectedchange // s'enclenchait au démarrage et fait planter l'application à cause de mon système par défaut. initialiserCboDepartement(departements, departement.EstNull() ? new Departement { Nom = "Tous" } : departement); // Ensuite, il faut afficher dans le cboProfessionnel le professionnel par défaut initialiserCboProfessionnel(employes, employe, departement); // Pour la barre de recherche LstCitoyenRecherche = controlModelListePatient.Citoyens.ToList <Citoyen>(); }