当我在文本框中键入数字以给它一个格式时,我有一条错误消息。当我输入这段代码时:
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
但是给我这个错误:
输入字符串的格式不正确。
答案 0 :(得分:0)
我建议使用TryParse而不是Parse来避免异常。
答案 1 :(得分:0)
您应该使用TryParse首先验证您是否可以解析文本框中的内容。您收到此异常是因为文本框中的值无法解析为double。您应该修改您的代码,如下所示:
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();
}
}
这样做首先验证文本框中的值是否可以解析为double,然后对其进行格式化并将其添加到文本框中。