【问题标题】:Error Formatting textbox in C#C#中的文本框格式错误
【发布时间】:2017-03-17 04:23:05
【问题描述】:

当我在文本框中键入一个数字以赋予其格式时,我收到一条错误消息。当我输入这段代码时:

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 但是给我这个错误:

输入字符串的格式不正确。

【问题讨论】:

标签: c# textbox format


【解决方案1】:

我建议使用 TryParse 而不是 Parse 以避免异常。

【讨论】:

    【解决方案2】:

    您应该首先使用 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();
        }       
    }
    

    它的作用是首先验证文本框中的值是否可以解析为双精度,然后对其进行格式化并将其添加到文本框中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-03-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多