Bonjour

Jusqu'a présent j'ai toujours utilisé des datagridviews bindé !

Mais je voudrais maintenant utiliser un DataGridView dont les colonnes sont définies dans le designer

Je mets donc la propriete autogeneratecolumns a false, j'assigne la datasource a ma datatable

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
     dgvDist.AutoGenerateColumns = false;
      dgvDist.DataSource = dtSteps
Et dans le designer j'ai biens trois colonnes qui portent les noms des colonnes de ma datatable

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
      this.dgvDist.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
            this.MinDist,
            this.Step,
            this.MaxDist});
Mais je constate que pour faire le bind des colonnes de ma datatable avec le Dgv, je dois aussi explicitement declarer le DataProperyName dans le code :


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
      dgvDist.AutoGenerateColumns = false;
      dtSteps = GenTools.CreateResuTable(ColDist);
      dgvDist.Columns["MinDist"].DataPropertyName = "MinDist";
      dgvDist.Columns["Step"].DataPropertyName = "Step";
      dgvDist.Columns["MaxDist"].DataPropertyName = "MaxDist";
      dgvDist.DataSource = dtSteps;
c'est normal ??

Je croyais que par défaut cela se faisait automatiquement par le nom ?