Probleme avec datagridviewcomboboxcell vb2005

Messages postés
589
Date d'inscription
jeudi 2 octobre 2003
Statut
Membre
Dernière intervention
29 avril 2008
- - Dernière réponse :  jabranekarima - 24 mai 2013 à 13:06
bonjour,
j'ai ub datagridview avec une comboboxcolumn que je remplit ainsi dans le chargement de ma page.

        
Dim MyTVA As New tva
Dim Myds As New DataSet
Myds = MyTVA.Lister_All_tva
Me.clTVA.DataSource = MyTVA.Lister_All_tva.Tables(0)
Me.clTVA.ValueMember = "Id"
Me.clTVA.DisplayMember = "Valeur"


jusque la ca va :yaisse2:
par contre quand j'ajoute une ligne

Me.dgTarifSpec.Rows.Add(1)


et que je passe un id de TVA comme je le ferai sur une combobox normale.

Me.dgTarifSpec.CurrentRow.Cells("clTVA").Value = 1


biensur la TVA ayant le code 1 existe. Il me met un message d'erreur me disant :
System.formatException : la valeur datagridviewcomboboxcell n'est pas valide. et me demande de traiter l'événement DataError.

Connaissez vous une solution ?

merci

Indigo : Créateur de Classe VB.Net http://www.infosoft81.com/InfoSoft/Indigo/Deploiement/publish.htm
Afficher la suite 

5 réponses

Messages postés
174
Date d'inscription
jeudi 3 février 2005
Statut
Membre
Dernière intervention
30 janvier 2009
0
Merci
Salut,
combien de colonne il y a dans ton datagridview ? Parce que si je vois bien, au moment d'ajouter une ligne, tu ne passe qu'un seul paramètre (ici 1). Donc cela voudrait dire qu'il n'y a qu'une colonne. La tva peut être ?
En tout cas si tu as plusieurs colonnes tu dois faire ceci :

Me.dgTarifSpec.Rows.Add(valeur1, valeur2, valeur3,...)
En sachant que les string doivent être mises entre " " si c'est codé en dur et (donc pas de variable). Si tu as une variable de type string là tu ne dois pas mettre de " ".

Par contre si tu as codé correctement, peut être devrais tu essayer de tranformer en type boolean.

if valeur = 1 then
    boo_Val = True
elseif valeur=0 then
    boo_valeur = False
end if

pseudoOM

Le partage est une force alors n'hésitez pas à cliquer sur réponse acceptée pour partager les solutions trouvées !
Commenter la réponse de pseudoOM
Messages postés
589
Date d'inscription
jeudi 2 octobre 2003
Statut
Membre
Dernière intervention
29 avril 2008
1
0
Merci
salut,
non en fait j'ajoute pas un parametre mais une ligne Rows.Add(1).
ensuite je n'essaie pas d'inserer du boolean mais une valeur qui devrait comme dans une combobox lié a un datasource me renvoyait le displaymember situe au rang désiré, ici 1.

voila, merci d'avoir essayé

Indigo : Créateur de Classe VB.Net http://www.infosoft81.com/InfoSoft/Indigo/Deploiement/publish.htm/FONT>
Commenter la réponse de cs_chris81
Messages postés
174
Date d'inscription
jeudi 3 février 2005
Statut
Membre
Dernière intervention
30 janvier 2009
0
Merci
oui ùais si je ne me trompe pas quand tu fais ça --> Me.dgTarifSpec.Rows.Add(1) tu ajoutes une ligne qui contient 1 comme valeur pour la cellule de ta colonne.

Et tu veux que la case dans ta colonne de type "DataGridViewCheckBoxColumn" se coche ?
pseudoOM

Le partage est une force alors n'hésitez pas à cliquer sur réponse acceptée pour partager les solutions trouvées !
Commenter la réponse de pseudoOM
Messages postés
174
Date d'inscription
jeudi 3 février 2005
Statut
Membre
Dernière intervention
30 janvier 2009
0
Merci
Oui je n'ai rien dit, excuse moi j'ai confondu ComboBox et CheckBox.
Alors je ne sais pas t'aider désolé.
Bonne chance quand même dans ta recherche de solution !

pseudoOM

Le partage est une force alors n'hésitez pas à cliquer sur réponse acceptée pour partager les solutions trouvées !
Commenter la réponse de pseudoOM
0
Merci
Bonjour,
J'ai rencontré le même problème , est-ce que vouas avez trouvé une solution Chris?
Merci d'avance.
Commenter la réponse de jabranekarima