cs_mgomez
Messages postés6Date d'inscriptionvendredi 26 mars 2010StatutMembreDernière intervention24 octobre 2013
-
22 févr. 2013 à 11:07
Utilisateur anonyme -
22 févr. 2013 à 12:56
Bonjour à tous, et merci d'avance pour votre aide.
petit "probleme", que je n'arrive pas à m'expliquer.
j'essaie de faire des comparaisons sur des cellules de datagridview (cela me semblait pas si difficile que ça !!)
j'ai donc un datagridview appelé "Grille1" alimenté par un fichier XML
un bindingsource lié à ma grille appelé "bs1"
voici le bout de code "simplifié" que j'utilise.
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
bs1.MoveFirst()
For i = 0 To Grille1.Rows.Count - 1
If Grille1.CurrentRow.Cells(0).Value > Grille1.CurrentRow.Cells(1).Value Then MessageBox.Show(Grille1.CurrentRow.Cells(0).Value & ">" & Grille1.CurrentRow.Cells(1).Value)
bs1.MoveNext()
Next
End Sub
Je pensais donc avoir un message si la valeur de la premiere cellule est superieure à la valeur de la seconde.
hors j'arrive à un résultat déroutant...
je peux avoir un résultat du genre "56 > 114" ou alors pas de message du tout alors qu'il devrait apparaitre à la vue des valeurs testées.
j'avoue ne pas comprendre ce qui "cloche", alors si vous pouviez m'aiguiller un peu.
Merci
La comparaison par défaut est de type string apparemment (un 5 est considéré plus grand qu'un 1). Value est surement de type Object (pas testé).
Je pense que tu devrais forcer un type pour la comparaison. Voir TryCast, CType sur l'aide msdn.