将文本框转换为十进制

时间:2013-12-18 18:15:23

标签: c#

我是C#的新手,我正在努力将我的文本框“textBoxAmount转换为小数。我可以在我出错的地方使用一些帮助。谢谢。

decimal dec_textBoxAmount;
dec_textBoxAmount = (decimal)int_textBoxValue / 100;
dec_textBoxAmount = Convert.ToDecimal(textBoxAmount.Text);

4 个答案:

答案 0 :(得分:1)

我会做这样的事情:

Decimal value = -1;
if (decimal.TryParse(textBoxAmount.Text, out value))
{
//Do something with your value
}else
{
//something went wrong with the conversion - i.e. not in a recognisable format so
//display some kind of error message
}

但是,有各种旋转控件可以返回十进制类型并允许您设置最小/最大范围,并且它们会拒绝任何不良文本等。

干杯 西蒙

答案 1 :(得分:0)

试试这个:

if (Decimal.TryParse(textBoxAmount.Text, out returnValue)
{
   //success

}
else
{
   //failed
}

答案 2 :(得分:0)

尝试使用decimal.TryParse()

string txtBoxValue = textBoxAmount.Text ;
decimal amount ;
bool parsedOk = decimal.TryParse( txtBoxValue , out amount ) ;

如果转换成功并且parsedOk具有该值,true将为amount。如果解析失败,parsedOkfalseamount将设置为default(decimal)(例如0m)。

答案 3 :(得分:0)

 decimal dec_textBoxAmount;
 dec_textBoxAmount = (decimal)int_textBoxValue / 100;

 if (Decimal.TryParse(textBoxAmount.Text, NumberStyles.None, CultureInfo.InvariantCulture, out dec_textBoxAmount))
 {
      //Conversion is successfull
  }
相关问题