cs_Zeny
Messages postés14Date d'inscriptionmardi 21 septembre 2004StatutMembreDernière intervention 9 avril 2013
-
15 juin 2008 à 15:17
cs_Zeny
Messages postés14Date d'inscriptionmardi 21 septembre 2004StatutMembreDernière intervention 9 avril 2013
-
17 juin 2008 à 09:49
Bonjour,
Bon voila je patauge depuis quelques temps sur quelque chose qui devrait pourtant etre simple : Mettre au format monétaire une colonne d'un DataGridView indépendant.
pour que lorsqu'un nombre (passons sur le problème du controle de validité) par exemple 12 est saisi, la valeur affichée devienne 12,00 dans cette colonne
D'aprés l'aide disponnible sur MSDN j'ai essayé d'utilisé :
monDataGridView.Columns(4).DefaultCellStyle.Format = "c" 'sans résultat
monDataGridView.Columns(4).DefaultCellStyle.Format = "c" 'sans résultat pour 2 chiffre aprés la virgule
j'ai tenté de placer ce code dans plusieurs évenements sans succés
je précise aussi que le DataGridView en question est ajouté dynamiquement.
Voila en espérant avoir été clair, je vous remerci d'avance pour toutes les infos que vous pourrez m'apporter.
'LA PARTIE QUI ME POSE PROBLEME
'ne produit pas d'erreur mais ne 'formate' pas la colonne.Columns(3).DefaultCellStyle.Format "c".Columns(4).DefaultCellStyle.Format
.Columns(0).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
.Columns(2).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
.Columns(3).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
.Columns(4).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
End With
Me.Controls.Add(myGrid)
End Sub
L'événement suivant gère la mise en forme :
Private Sub myGrid_CellFormatting(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellFormattingEventArgs) _
Handles myGrid.CellFormatting
If myGrid.Columns(e.ColumnIndex).Name.Equals("Px. UNIT") Then
If e.Value > 0 Then
e.Value = CDec(e.Value).ToString("N2")
End If
End If
End Sub
Bonne continuation.