2017-03-16 12 views
0

テキストボックスに数値を入力してフォーマットすると、エラーメッセージが表示されます。私はこのコードを入力していたとき:エラーC#でのテキストボックスの書式設定

private void textBoxX1_TextChanged(object sender, EventArgs e) 
    { 
     textBoxX1.Text = string.Format("{0:F}",double.Parse(textBoxX1.Text)); 
     string txtval = textBoxX1.Text; 

     } 

私は100.00にテキストボックス形式にそれを100入力ので、もし私が唯一の書式設定のための2つの小数をしたいです。その後、変数txtval にその値を渡しますが、私は、このエラーを与える:

Input string was not in a correct format.

+0

「入力文字列が正しい形式ではありません」を解決する方法の重複が考えられます。エラー?](http://stackoverflow.com/questions/12269254/how-to-resolve-input-string-was-not-in-a-correct-format-error) –

答えて

0

私は例外を避けるために、TryParse代わりの解析を使用することをお勧めします。

0

まず、TryParseを使用して、テキストボックス内の内容を解析できるかどうかを確認する必要があります。この例外は、テキストボックス内の値を2重に解析できないために発生します。あなたはこのように見えるためにあなたのコードを変更する必要があります

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(); 
    }  
} 

これは最初のテキストボックスの値が二重に解析することができることを確認し、それをフォーマットし、テキストボックスに追加されません。

関連する問題