Bonjour,

je possède une collection de type List<Colonne> avec Colonne définit comme suit:

Code c# : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
public class Colonne
{
  public int Id {get; set;}
  public string Nom {get; set;}
  public string Description {get; set;}
}

Je possède aussi un DataGrid. J'aimerais que les colonnes du DataGrid soit celles contenues dans ma collection List<Colonne>. J'aimerais que le nom d'En-Tête de la colonne soit celui du nom de la colonne.
Est-il possible de faire cela par binding et si oui, comment puis-je procéder ?

La finalité est la suivante. Les lignes du DataGrid représentent un ensemble d'attributs. La collection List<Attribut> représente l'ensemble des attributs disponibles.
La collection List<ValueAttribute> représente quant à elle l'ensemble des valeurs des attributs pour chacune des colonne. Ce sera le contenu de mon DataGrid.
La classe ValueAttribute est définit comme suit:

Code c# : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
public class ValuesOfAttribute
{
  public Attribut TheAttribut {get; set;}
  public List<ValueColonne> ValuesCollection {get; set;}
}
 
public class ValueColonne
{
  public Colonne TheColonne {get; set;}
  public string Value {get; set;}
}

La propriété ValuesCollection de la classe ValuesOfAttribute donne les valeurs des colonnes pour un attribut donné. Si aucune valeur ne correspond à une colonne, celle-ci n'est pas définie dans la collection.

Le but final est de pouvoir binder la collection List<ValueAttribute> à mon DataGrid.

Merci d'avance pour votre aide.
Zoax.