2011-06-19 18 views
0

このコードは、フォーマットの例外を処理しませんでした!フォーマットの例外処理されていません

テキストボックスから数値を取得します。私が採用できる他の方法はありますか?

このフォーム(form2)は、メインフォーム(form1)から2回呼び出されるカスタムメッセージボックスとして使用されます。したがって、配列のサイズは3です。

Int32[] g = new Int32[3]; 
Int32[] h = new Int32[3]; 
int TwoClicks = 0; 

private void Form2_Load(object sender, EventArgs e) 
{ 

    g[TwoClicks] = (Int32.Parse(textBox1.Text) * 60 + Int32.Parse(textBox2.Text)); 
    h[TwoClicks] = (Int32.Parse(textBox3.Text) * 60 + Int32.Parse(textBox4.Text)); 

} 
+0

あなたのコードのテキストボックスからご入力値がどのようなものをデバッグするときは? – Magnus

+0

テキストボックスの内容はintですか?いくつかのサンプル入力を表示できますか?デバッグ時に、どの行に例外がスローされますか? – jao

答えて

0

回答は何をしたいのですか?あなたがテキストボックスの値として0を返すような状況に適切な何かを行うことができるエラーがあった場合、構文解析された値と情報を得るためにTryParseメソッドを使用することができます。あなたが行うことができる他のものは、try cachのコードをsuroundにして例外がスローされたときに何かすることです。

0

リストを使用して、それを試してみてください。

List<int> g = new List<int>(); 
    List<int> h = new List<int>(); 

    int text1, text2, text3, text4; 
    int.TryParse(textBox1.Text, out text1); 
    int.TryParse(textBox2.Text, out text2); 
    int.TryParse(textBox3.Text, out text3); 
    int.TryParse(textBox4.Text, out text4); 

    g.Add(text1 * 60 + text2); 
    h.Add(text3 * 60 + text4); 
関連する問題