Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionprivate ArrayList getADGroupes() { ArrayList members = null; // Critère de recherche dans la base LDAP DirectorySearcher mySearcher = new DirectorySearcher(entry,"(objectCategory=group)"); // On indique les propriétés qu'on souhaiterai utiliser mySearcher.PropertiesToLoad.Add("name"); mySearcher.PropertiesToLoad.Add("member"); // On lance la recherche foreach(SearchResult res in mySearcher.FindAll()) { // On vérifie que le groupe contient une propriété "member" if(res.Properties["member"] != null) { if(members == null) members = new ArrayList(); // On instancie notre classe ADGroupe (voir ci-dessous) ADGroupe grp = new ADGroupe(); grp.name = res.Properties["name"][0].ToString(); for(int i=0; i<res.Properties["member"].Count; i++) grp.membres.Add(res.Properties["member"][i].ToString()); members.Add(grp); } } // On retourne notre ArrayList return members; } Puis dans la méthode Load du Formulaire: private void Form1_Load(object sender, System.EventArgs e) { entry = new DirectoryEntry("LDAP://[nom de ton serveur Active Directory]"); entry.Username = @"[DOMAINE\Utilisateur]"; entry.Password = "[Mot de Passe]"; ArrayList groupes = this.getADGroupes(); if(groupes != null) foreach(ADGroupe grp in groupes) // Ajoute à la dropdownlist notre Objet ADGroupe this._ddlGrpe.Items.Add(grp); } Voici maintenant la méthode de l'évènement selectedIndexChanged de ta dropdownlist: private void _ddlGrpe_SelectedIndexChanged(object sender, System.EventArgs e) { // On vide la listbox this._lbUsers.Items.Clear(); // On vérifie qu'il y a y a bien un item sélectionné et sa nature (dans le cas où tu mettrais une liste d'objet différents) if(_ddlGrpe.SelectedItem != null && _ddlGrpe.SelectedItem is ADGroupe) foreach(string ut in ((ADGroupe)_ddlGrpe.SelectedItem).membres) // On ajoute les utilisateurs à la listbox this._lbUsers.Items.Add(ut); } Maintenant voici la classe ADGroupe: Alle n'a rien d'extraodinaire, c'est une classe public qui à un champs public (pour faire rapide) name, contenant le nom du groupe, et un champs membres qui est une ArrayList. La méthode ToString(à a été réécrite afin de pouvoir afficher le nom du groupe lorsque la dropdownlist fera appel à cette méthode lors du listing des groupes public class ADGroupe { public string name = null; public ArrayList membres = null; public ADGroupe() { membres = new ArrayList(); } public override string ToString() { return this.name; } }