2012-08-10 2 views
0

J'essaye d'afficher des pourcentages dans un MaskedTextBox la chaîne étant passée dans son "40.99" mais quand elle affiche sur le formulaire c'est "409.9%".Pourcentage dans l'affichage maskedTextBox incorrectement

peuplement valeur

if (_person.Percentage != null) 
    maskedTextBoxPercentage.Text = _person.Percentage.ToString(); 
else 
{ 
    maskedTextBoxPercentage.Text = 0.00.ToString(); 
} 

propriétés maskedTextBoxPercentage

this.maskedTextBoxPercentage.Location = new System.Drawing.Point(437, 125); 
this.maskedTextBoxPercentage.Mask = "000.00%"; 
this.maskedTextBoxPercentage.Name = "maskedTextBoxPercentage"; 
this.maskedTextBoxPercentage.Size = new System.Drawing.Size(129, 20); 
this.maskedTextBoxPercentage.TabIndex = 65; 

enter image description here

+0

Que voulez-vous montrer exactement? – aliboy38

+0

@ aliboy38 En ce moment je l'ai eu affichage correctement en utilisant "00.00%" comme le masque, mais il ne me permettra pas d'entrer "100%" –

+0

juste dire si elle vous donne une erreur – aliboy38

Répondre

1

Si vous vous attendez à afficher "40,99%", changer votre masque à "00,00%"

+0

J'ai essayé un peu. Essayé en utilisant "000.00%", car il peut être 100%, mais maintenant il affiche "409.9_%" –

1

Essayez ceci:

try 
      { 
       this.maskedTextBoxPercentage.Mask = "00.00%"; 

      } 
      catch (Exception) 
      { 
       this.maskedTextBoxPercentage.Mask = "000%"; 
      } 

Ou vous pouvez essayer cela aussi:

try 
     { 
      this.maskedTextBoxPercentage.Mask = "00.00%"; 

     } 
     catch (Exception) 
     { 
      this.maskedTextBoxPercentage.Text = "100%"; 
     } 
+0

Cela serait utilisé à OnTextChanged? –

+0

dans le même emplacement que vous avez déjà écrit ces codes – aliboy38

+0

Je n'ai jamais vu un try/catch utilisé dans InitializeComponent() –