bonjour
j'ai se code dans un textbox pour calculer un prix.
mais comment faire le calcul meme si un des textbox et vide,car la ça me fait des erreurs
de calcul
PrivateSub txbPrixR‚el_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txbPrixR‚el.TextlblPrixtot.Text = CDbl(txbPrixR‚el.Text) - CDbl(txbCommune.Text) - CDbl(txbAutreCE.Text) - CDbl(txbCafBV.Text) - CDbl(txbMSA.Text) & " ?"
Il me semble que le principal problème soit que ta condition s'active lorsque le texte de ton textbox change, or ici tu le laisse vide. Malgré tout si cela marche, je vois deux solution:
- tu met 0 en valeur par défaut de ton textbox
- contrôle : if tonTextBox .text is nothing (ou tonTextBox.text = "") then
tonTextBox.text = 0
end if
dernière chose: vérifie que tu puisse calculer à partir de valeur "string", si ce n'est pas le cas Float est ton ami !
salut,
CDBL ne fonctionne pas sur un vide, seul VAL sait le faire mais ne prend pas les décimaux
tu peux donc te faire ta fonction perso
Function mCDbl(ByRef oTBox As TextBox) As Double
If (oTBox Is Nothing) OrElse (oTBox.Text.Length = 0) Then
Return 0.0#
Else
Return Convert.ToDouble(oTBox.Text)
End If
End Function