0

こんにちは、単純な C# 計算サンプルを作成しています Label1.Text = textBox1.Text + textbox2.Text 88.5 または 80.3 を入力しようとすると問題が発生し、プログラムを計算するとエラーが発生してクラッシュし続けます。テキストを Int に変換し、ここに私のコードを示します。

 int i;
 i = Convert.ToInt32(textBox1.Text) + Convert.ToInt32(textBox2.Text);
 Label1.Text= i.ToString();

しかし、 88 と 80 を挿入すると機能します。私はこれで何かが恋しいことを知っています.誰かが私を助けることができますか? ありがとうございました

4

1 に答える 1

5

「88.5」を整数に変換しようとしています。整数じゃないですよね?

decimal代わりに使用することをお勧めします-TryParse例外に頼らずに無効なユーザー入力を処理できるように使用します。

decimal input1, input2;
if (decimal.TryParse(textBox1.Text, out input1) &&
    decimal.TryParse(textBox1.Text, out input2))
{
    Label1.Text = (input1 + input2).ToString();
}
else
{
    Label1.Text = "Invalid input";
}
于 2012-11-11T09:44:36.997 に答える