Bonjour,
Je m'arrache les cheveux depuis hier sur le problème suivant: Je cherche à afficher dans un DataGridView un combobox pour un choix d'objet.
Je vais prendre l'exemple de ces deux classes:
Et voici un exemple d'initialisation:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 public class City { public int ID { get; set; } public string Name { get; set; } } public class Person { public int ID { get; set; } public string Name { get; set; } public City City { get; set; } }
J'ai un DataGridView dans lequel j'affiche la liste de personnes de l'équipe (en utilisant la liste "team"). Je souhaite avoir une ComboBox pour l'édition de la ville associée à une personne.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 // Création des villes City paris = new City() { ID = 1, Name = "Paris" }; City londres = new City() { ID = 2, Name = "Londres" }; City madrid = new City() { ID = 3, Name = "Madrid" }; List<City> cities = new List<City>() { paris, londres, madrid }; // Création des personnes // On ignore dans quelles villes sont max et bob Person john = new Person() { ID = 1, Name = "John", City = paris }; Person deborah = new Person() { ID = 2, Name = "Deborah", City = londres }; Person max = new Person() { ID = 3, Name = "Max", City = null }; Person bob = new Person() { ID = 4, Name = "Bob", City = null }; List<Person> team = new List<Person>() { john, deborah, max, bob };
J'ai défini la colonne City comme editable via ComboBox, j'ai donné en DataSource la liste "cities".
Je bloque à l'édition, je reçois une exception qui me dit que je ne peux convertir une String en City...
Si quelqu'un sait comment faire pour résoudre ce problème, je l'en remercie par avance.
Partager