繁体   English   中英

当我试图解析Double时,我得到一个FormatException

[英]I get a FormatException when I'm trying to parse a Double

我正在开发Windows 8应用程序。 我有一个列表框,显示单击的项目(SelectedIndex)的特定事物。

基于不同文本框中显示的文本,我为一个类创建一个新实例,该类获取信息并将其放入对象中。 从该对象我将不同的对象信息放入双变量中,我可以使用“toString()”方法在屏幕中输出。 每次我想在列表中“添加”某些内容时,我希望数字相乘而不是文本字符串只是相互添加,例如:

 totalWeight += double.Parse(tbx_TotalVikt.Text);

在这里,我希望totalWeight(它是一个双精度)是tbx_TotalVikt.Text中文本的解析版本。 但我不断收到此错误消息:

mscorlib.dll中出现“System.FormatException”类型的异常,但未在用户代码中处理

附加信息:输入字符串的格式不正确。

最佳做法是在解析数字时提供格式提供程序作为第二个参数。

double.Parse("1.254", CultureInfo.InvariantCulture.NumberFormat)

如果您确定这不是问题,那么您将向Parse方法提供垃圾,并应在调试器中调查您的输入。

我修好了它。

double item = 0;
if(double.TryParse(tbx_TotalVikt.Text, out item))
            {
                totalWeight += item;
            }
tbx_TotalVikt.Text = totalWeight.ToString();

使用TryParse查看文本是否为double。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM