Bonjour,
Je possède un objet défini de la façon suivante:
Je souhaiterais afficher les données de mon objet sous forme d'une ligne et deux colonne (var1 et var2) dans un datagridview avec du databinding mais j'ai quelques soucis !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50 public class ObjetA { private string var1; public string Var1 { get { return var1; } set { var1 = value; } } private ObjetB b; public ObjetB B { get { return b; } } public ObjetA() { var1 = "test1"; B = new ObjetB(); } } public class ObjetB { private string var2; public string Var2 { get { return var2; } set { var2 = value; } } public ObjetB() { var2 = "test2"; } }
J'ai donc créé un datagridview (datagrigview1) auquel j'ai ajouté 2 colonnes de type DataGridViewTextBowColumn :
Ensuite je crée mon objet que je souhaite afficher :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 Column1.DataPropertyName = "Var1"; Column1.HeaderText = "Column1"; Column1.Name = "Column1"; Column2.DataPropertyName = "B.Var2"; Column2.HeaderText = "Column2"; Column2.Name = "Column2";
et une liste de cet objet car je n'arrive pas à obtenir qqch autrement:
Code : Sélectionner tout - Visualiser dans une fenêtre à part Objet A = new Objet A();
Vient ensuite l'affichage ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 List<ObjetA> ListeTemp = new List<ObjetA>(); ListeTemp.Add(A);
Je ne parviens de cette manière à afficher que var1 ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2dataGridView1.AutoGenerateColumns = false; dataGridView1.DataSource = ListeTemp;
Je me pose donc plusieures questions ...
1- Est-on obligé de passer par des listes même si on ne souhaite afficher qu'une ligne dans un DGV?
2- Le binding que je souhaite mettre en place est-il réalisable ?
Merci
Partager