Changer le type de colonne d'un DataGridView [Résolu]

Messages postés
548
Date d'inscription
mercredi 28 juillet 2004
Dernière intervention
11 septembre 2013
- - Dernière réponse :  Pascalnasena - 12 janv. 2018 à 16:06
Bonjour,

J'aimerai changer le type d'une colonne datagridview texte en datagridview combobox par le code. Ce combo serait alimenté par une datatable.
Je précise que je sait le faire en insérant une nouvelle colonne et je mets bien à jour mon datagridview; J'ai donc 2 colonnes.
J'aimerai en avoir qu'une.

Merci pour vos réponses.
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
Messages postés
548
Date d'inscription
mercredi 28 juillet 2004
Dernière intervention
11 septembre 2013
3
Merci
Oui, c'est bien çà, j'utilise une DataGridViewComboBoxCell que je rempli avec un datatable :

Dim cmb As New DataGridViewComboBoxCell
cmb.DataSource = recupere_donnees_table("voltages", "voltage")
cmb.DisplayMember = "voltage"
cmb.ValueMember = "voltage"
grille_catrefsa.Rows(x).Cells(y) = cmb

Private Function recupere_donnees_table(table As String, champ As String)
Try
Dim sqlcommand As String = ("SELECT DISTINCT " & champ & " FROM " & table & " ORDER BY " & champ & " ASC")
Dim i_catrefs As New MySqlConnection(connStr)
i_catrefs.Open()
Dim command As New MySqlCommand(sqlcommand, i_catrefs)
Dim adapter As New MySqlDataAdapter()
adapter.SelectCommand = command
Dim i_table As New DataTable()
adapter.Fill(i_table)
i_catrefs.Close()
Return i_table
Catch ex As Exception
MsgBox(ex.Message)
End Try
Return ""
End Function

Merci

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 98 internautes nous ont dit merci ce mois-ci

Commenter la réponse de vercomax
0
Merci
Bonjour,

On peut lire sur msdn :
La propriété ColumnType est une propriété de moment de design uniquement qui indique la classe qui représente le type de colonne. Il ne s'agit pas d'une propriété réelle définie dans une classe de colonne.

Le moyen le plus simple est donc de supprimer la colonne et d'en recréer une du type souhaité et de la peupler avec tes données converties.
Commenter la réponse de Utilisateur anonyme
Messages postés
548
Date d'inscription
mercredi 28 juillet 2004
Dernière intervention
11 septembre 2013
0
Merci
Merci banana32,

J'ai certainement trouvé la solution en utilisant datagridviewcomboboxcell. En faisant apparaitre un combo directement dans la cellule cliquée pour éviter d'avoir une colonne remplie de combo, c'est plus joli ;)
Je vous tiens au jus.

Merci.
Commenter la réponse de vercomax

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.