Afin d' éviter à certain de réinventer la roue (si si il y en a, j' en ai même fait parti avant la découverte de .net), voici un petit rappel sur l' usage des contrôles de validations avec des nombres.
Dans un premier temps il est possible de vérifier que la saisie correspond effectivement à un nombre :
<asp:TextBox ID="TextBox1" runat="server" /> <asp:CompareValidator ID="CompareValidator1" runat="server" ControlToValidate="TextBox1" ErrorMessage="Ce champs doit contenir un nombre." Display="Dynamic" Type="Integer" Operator="DataTypeCheck" />
Ensuite on peut vérifier que ce nombre est supérieur à une valeur, égal à une autre, ou différent de. Dans mon exemple je veux interdire la saisie de valeurs négatives :
<asp:CompareValidator runat="server" ID="CompareValidator2" ControlToValidate="TextBox1" ErrorMessage="Ce nombre doit être positif." Display="Dynamic" Operator="GreaterThanEqual" ValueToCompare="0" />
Ces test contrôles de validation étant cumulables il serrait dommage de s' en priver ;) (pensez au temps gagné!)
PS: on peut aussi noter l' usage de la propriété Display qui est placée à Dynamic. Ceci évite que votre contrôle de validation réserve la place pour l' affichage du texte, même quand celui-ci n'est pas visible. Le message serra pourtant proprement affiché en cas de saisie incorrecte.