Vous pouvez faire appel à la fonction String.Format avant d'affecter la valeur au TextBox, ou mieux vous créez un contrôle dérivant de TextBox qui implémentera cette fonctionnalité.
-- Zazar
Bonjour,
Comment formater à l'affichage dans un textBox une valeur numérique
ex: "2 500,00"
Dans les datagrid j'utilise:
DataFormatString="{0: # ##0}"
Vous pouvez faire appel à la fonction String.Format avant d'affecter la
valeur au TextBox, ou mieux vous créez un contrôle dérivant de TextBox qui
implémentera cette fonctionnalité.
Vous pouvez faire appel à la fonction String.Format avant d'affecter la valeur au TextBox, ou mieux vous créez un contrôle dérivant de TextBox qui implémentera cette fonctionnalité.
l'affichage est correct le seul problème est que cela déclenche une erreur si l'on place un RangeValidator de type "Currency" car il n'accepte pas l'espace inséré par le string.format ?
De plus y a t'il moyen de justifier à droite un textbox ?
Alain
"Zazar" a écrit :
Bonjour,
> Comment formater à l'affichage dans un textBox une valeur numérique > > ex: "2 500,00" > > Dans les datagrid j'utilise: > DataFormatString="{0: # ##0}" > > ex: <asp:BoundColumn DataField="HonorairesRemiseHT" HeaderText="Honoraires > HT" DataFormatString="{0: # ##0}"> > > Je n'ai pas trouvé dans un textbox ?
Vous pouvez faire appel à la fonction String.Format avant d'affecter la valeur au TextBox, ou mieux vous créez un contrôle dérivant de TextBox qui implémentera cette fonctionnalité.
l'affichage est correct le seul problème est que cela déclenche une erreur
si l'on place un RangeValidator de type "Currency" car il n'accepte pas
l'espace inséré par le string.format ?
De plus y a t'il moyen de justifier à droite un textbox ?
Alain
"Zazar" a écrit :
Bonjour,
> Comment formater à l'affichage dans un textBox une valeur numérique
>
> ex: "2 500,00"
>
> Dans les datagrid j'utilise:
> DataFormatString="{0: # ##0}"
>
> ex: <asp:BoundColumn DataField="HonorairesRemiseHT" HeaderText="Honoraires
> HT" DataFormatString="{0: # ##0}">
>
> Je n'ai pas trouvé dans un textbox ?
Vous pouvez faire appel à la fonction String.Format avant d'affecter la
valeur au TextBox, ou mieux vous créez un contrôle dérivant de TextBox qui
implémentera cette fonctionnalité.
l'affichage est correct le seul problème est que cela déclenche une erreur si l'on place un RangeValidator de type "Currency" car il n'accepte pas l'espace inséré par le string.format ?
De plus y a t'il moyen de justifier à droite un textbox ?
Alain
"Zazar" a écrit :
Bonjour,
> Comment formater à l'affichage dans un textBox une valeur numérique > > ex: "2 500,00" > > Dans les datagrid j'utilise: > DataFormatString="{0: # ##0}" > > ex: <asp:BoundColumn DataField="HonorairesRemiseHT" HeaderText="Honoraires > HT" DataFormatString="{0: # ##0}"> > > Je n'ai pas trouvé dans un textbox ?
Vous pouvez faire appel à la fonction String.Format avant d'affecter la valeur au TextBox, ou mieux vous créez un contrôle dérivant de TextBox qui implémentera cette fonctionnalité.
l'affichage est correct le seul problème est que cela déclenche une erreur si l'on place un RangeValidator de type "Currency" car il n'accepte pas l'espace inséré par le string.format ?
C'est normal, s'il y a un espace, ce n'est pas un nombre. Pour contourner ça, il va falloir passer par un customvalidator.
De plus y a t'il moyen de justifier à droite un textbox ?
Pas à ma connaissance, mais je ne garantirais pas que c'est impossible. Si vous connaissez la taille du champ (en nombre de caractères), vous pourrez jouer avec du javascript pour faire en sorte de rajouter des espaces avant le contenu de la textbox, mais c'est pas top.
Sinon, une autre possibilité pour résoudre vos problèmes est de différencier les contrôles servant à l'affichage de ceux servant à l'édition si c'est possible. Un peu comme dans le datagrid qui utilise des labels, et si on modifie une ligne, utilise des textbox.
l'affichage est correct le seul problème est que cela déclenche une erreur
si l'on place un RangeValidator de type "Currency" car il n'accepte pas
l'espace inséré par le string.format ?
C'est normal, s'il y a un espace, ce n'est pas un nombre. Pour contourner
ça, il va falloir passer par un customvalidator.
De plus y a t'il moyen de justifier à droite un textbox ?
Pas à ma connaissance, mais je ne garantirais pas que c'est impossible. Si
vous connaissez la taille du champ (en nombre de caractères), vous pourrez
jouer avec du javascript pour faire en sorte de rajouter des espaces avant
le contenu de la textbox, mais c'est pas top.
Sinon, une autre possibilité pour résoudre vos problèmes est de différencier
les contrôles servant à l'affichage de ceux servant à l'édition si c'est
possible. Un peu comme dans le datagrid qui utilise des labels, et si on
modifie une ligne, utilise des textbox.
l'affichage est correct le seul problème est que cela déclenche une erreur si l'on place un RangeValidator de type "Currency" car il n'accepte pas l'espace inséré par le string.format ?
C'est normal, s'il y a un espace, ce n'est pas un nombre. Pour contourner ça, il va falloir passer par un customvalidator.
De plus y a t'il moyen de justifier à droite un textbox ?
Pas à ma connaissance, mais je ne garantirais pas que c'est impossible. Si vous connaissez la taille du champ (en nombre de caractères), vous pourrez jouer avec du javascript pour faire en sorte de rajouter des espaces avant le contenu de la textbox, mais c'est pas top.
Sinon, une autre possibilité pour résoudre vos problèmes est de différencier les contrôles servant à l'affichage de ceux servant à l'édition si c'est possible. Un peu comme dans le datagrid qui utilise des labels, et si on modifie une ligne, utilise des textbox.
-- Zazar
Alain
Bonjour,
Merci pour tes réponses. En effet il n'y a rien d'évident dans tout cela. La solution que j'aii utilisée consiste effectivement à ne formatter que des champs en affichage.
A bientôt
Alain
"Zazar" a écrit :
Bonsoir,
> j'ai écris : Honoraires.Text = String.Format("{0:#,###0.00}", > Offre.Honoraires) > > l'affichage est correct le seul problème est que cela déclenche une erreur > si l'on place un RangeValidator de type "Currency" car il n'accepte pas > l'espace inséré par le string.format ?
C'est normal, s'il y a un espace, ce n'est pas un nombre. Pour contourner ça, il va falloir passer par un customvalidator.
> De plus y a t'il moyen de justifier à droite un textbox ? Pas à ma connaissance, mais je ne garantirais pas que c'est impossible. Si vous connaissez la taille du champ (en nombre de caractères), vous pourrez jouer avec du javascript pour faire en sorte de rajouter des espaces avant le contenu de la textbox, mais c'est pas top.
Sinon, une autre possibilité pour résoudre vos problèmes est de différencier les contrôles servant à l'affichage de ceux servant à l'édition si c'est possible. Un peu comme dans le datagrid qui utilise des labels, et si on modifie une ligne, utilise des textbox.
-- Zazar
Bonjour,
Merci pour tes réponses. En effet il n'y a rien d'évident dans tout cela. La
solution que j'aii utilisée consiste effectivement à ne formatter que des
champs en affichage.
A bientôt
Alain
"Zazar" a écrit :
Bonsoir,
> j'ai écris : Honoraires.Text = String.Format("{0:#,###0.00}",
> Offre.Honoraires)
>
> l'affichage est correct le seul problème est que cela déclenche une erreur
> si l'on place un RangeValidator de type "Currency" car il n'accepte pas
> l'espace inséré par le string.format ?
C'est normal, s'il y a un espace, ce n'est pas un nombre. Pour contourner
ça, il va falloir passer par un customvalidator.
> De plus y a t'il moyen de justifier à droite un textbox ?
Pas à ma connaissance, mais je ne garantirais pas que c'est impossible. Si
vous connaissez la taille du champ (en nombre de caractères), vous pourrez
jouer avec du javascript pour faire en sorte de rajouter des espaces avant
le contenu de la textbox, mais c'est pas top.
Sinon, une autre possibilité pour résoudre vos problèmes est de différencier
les contrôles servant à l'affichage de ceux servant à l'édition si c'est
possible. Un peu comme dans le datagrid qui utilise des labels, et si on
modifie une ligne, utilise des textbox.
Merci pour tes réponses. En effet il n'y a rien d'évident dans tout cela. La solution que j'aii utilisée consiste effectivement à ne formatter que des champs en affichage.
A bientôt
Alain
"Zazar" a écrit :
Bonsoir,
> j'ai écris : Honoraires.Text = String.Format("{0:#,###0.00}", > Offre.Honoraires) > > l'affichage est correct le seul problème est que cela déclenche une erreur > si l'on place un RangeValidator de type "Currency" car il n'accepte pas > l'espace inséré par le string.format ?
C'est normal, s'il y a un espace, ce n'est pas un nombre. Pour contourner ça, il va falloir passer par un customvalidator.
> De plus y a t'il moyen de justifier à droite un textbox ? Pas à ma connaissance, mais je ne garantirais pas que c'est impossible. Si vous connaissez la taille du champ (en nombre de caractères), vous pourrez jouer avec du javascript pour faire en sorte de rajouter des espaces avant le contenu de la textbox, mais c'est pas top.
Sinon, une autre possibilité pour résoudre vos problèmes est de différencier les contrôles servant à l'affichage de ceux servant à l'édition si c'est possible. Un peu comme dans le datagrid qui utilise des labels, et si on modifie une ligne, utilise des textbox.