[英]Error Formatting textbox in C#
在文本框中键入数字以提供格式时出现错误消息。 当我用以下代码键入时:
private void textBoxX1_TextChanged(object sender, EventArgs e)
{
textBoxX1.Text = string.Format("{0:F}",double.Parse(textBoxX1.Text));
string txtval = textBoxX1.Text;
}
我只需要两个小数位进行格式化,因此,如果我输入100
则文本框会将其格式化为100.00
。 然后将该值传递给变量txtval,但给我这个错误:
输入的字符串格式不正确。
我建议使用TryParse而不是Parse来避免发生异常。
您应该使用TryParse首先验证是否可以解析文本框中的内容。 由于文本框中的值无法解析为双精度值,因此您将收到此异常。 您应该将代码修改为如下所示:
private void textBoxX1_TextChanged(object sender, TextChangedEventArgs e)
{
double value = 0.00;
if (double.TryParse(textBoxX1.Text, out value))
{
textBoxX1.Text = string.Format("{0:F}", value);
string txtval = value.ToString();
}
}
这是先验证文本框中的值可以解析为双精度,然后设置其格式并将其添加到文本框中。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.