2016-08-04 6 views
0

私は私のコードテキストボックスのテキストを値に変換するには?

label3.Text = (((2 * 4.1) * 2) + (2 * textBox1.Text) + 31.6).ToString(); 

でこの表現を持っているしかし、私は表現とLABEL3のテキストで保存する答えを評価するために、textBox1.Text値を必要としています。だから私は2,3などのようなものにtextBox1のテキストを変更することができるはずですし、式を評価し、答えをlabel3.Textに配置する必要があります。

どうすればいいですか?

+0

は、プロジェクトに関する詳細な情報を提供してもらえますか? – Greg

+0

このゲームはスキルを編集するためのものです。例えば、私はスキルを持っています。(((レベル* 4.1)*レベル)+(レベル* 93.8)+ 31.6)1つの値を変更する必要があります。あなたがテキストボックスに445,4(例えば)を書く場合、ユーザーはスキルをどれくらいの損害を受けるか知るでしょう。プログラムはバイナリファイルで動作します。 –

答えて

0

私はあなたが尋ねていることを理解していると思います。

まず、テキストボックスの値が数値であることを確認してから計算を実行する必要があります。

label3.Text = (((2 * 4.1) * 2) + (2 * Convert.ToDouble(textBox1.Text)) + 31.6).ToString(); 
+0

回答ありがとうございます。しかし、1つの問題があります。プログラムは難しくありませんが、それはbig.Itvery 200個以上のテキストボックスが含まれています。誰もが独自の数式(独自のラベル)を持っています。 –

+0

私はちょうどそれをするために私の答えを編集しました。しかし、この方法には注意してください。実際に数値であるかどうかを確認するには、まずテキストボックスの値をテストする必要があります。 – Cameron

+0

ありがとうございます。私は試してみます。 –

1

まず最初のテキストボックスから値を取得し、使用しているものを2桁または10進数に変換する必要があります。この

double textbox1_Value = Convert.ToDouble(textbox1.Text); 

で今、あなたがその場所にtextbox1_Valueを挿入することができ、それが二重であるため、それが今の答えを評価することができますか。

あなたはテキストボックスの値は二重のものではない場合ので、私はトライcatchブロックの中にそれをスローしていましデータバインディングを使用していないのであれば、あなたのコードは、個人的に

label3.Text = (((2 * 4.1) * 2) + (2 * textbox1_Value) + 31.6).ToString(); 

でしょうか?私はそれについて移動する方法を:

try 
{ 
    double textbox1_Value = Convert.ToDouble(textbox1.Text); 
} 
catch 
{ 
    MessageBox.Show("Error, unable to parse text"); 
    return; 
} 
label3.Text = (((2 * 4.1) * 2) + (2 * textbox1_Value) + 31.6).ToString(); 

二重に変換しようとしたとき、何かがうまくいかないのであれば、それはあなたがエラーを表示し、プログラムを終了または関数の外に返すことができ、それをキャッチします。

0

問題は解決されました。ありがとうございます。

ます。private void TextBox1_TextChanged(オブジェクト送信者、EventArgsの電子)

てみ

{

ます。Label1.Text =(((2 * 4.1)2)+(2 Convert.ToDouble( textbox1.Text)31.6).ToString();

}

キャッチ

{

}

関連する問題