2010-09-19 4 views

Répondre

0

Les critères que vous décrivez peuvent être vérifiés avec un RegEx, mais il serait plus judicieux de vérifier juste avec decimal.TryParse()

string txt = MyTextBox.Text; 
decimal value; 

if (decimal.TryParse(txt, 
     NumberStyles.AllowDecimalPoint, 
     CultureInfo.InvariantCulture, out value)) 
{ 
    // got it 
} 

Les NumberStyles et CultureInfo (IFormatProvider) sont en discussion.

+0

Ils sont. La virgule est juste à côté du smiley: http://www.intomobile.com/2010/09/14/windows-phone-keyboard/ –

0

Utilisez événement TextChanged de votre textBox et montrer le résultat dans un autre

private void PriceTextBox_TextChanged(object sender, TextChangedEventArgs e) 
    { 

     float price; 
     if (float.TryParse(priceTextBox.Text, out price)) 
     { 
      tipTextBox.Text = calculate().ToString(); 
     } 
     else 
     { 
      tipTextBox.Text = "wrong"; 
     } 
    } 

EDIT: utilisation Information Culture si nécessaire

Questions connexes