0

単純なプログラムを使用して方程式を計算しようとしていますが、コードを実行しようとすると、この例外が発生します

Unable to cast object of type 'System.Windows.Forms.TextBox' to type 'System.IConvertible'.

私は何を間違っているのかわかりません 方程式は問題ないようですが、エラーが生成されている場所です この方程式はコード化しようとしています 私の方程式のイメージ

これは以下の私のコードです

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        double  r = 0;



        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            r = (((Math.Sqrt(2) * Convert.ToDouble(textBox4.Text)) /(2* Math.PI * Convert.ToDouble(textBox3.Text))) * (1/Convert.ToDouble(textBox2) +1/Convert.ToDouble(textBox1)) );
            label7.Text = "R1 = " + r.ToString() + " ohms/km";

        }
    }
}
4

1 に答える 1

2

あなたの問題は、長い行の最後にこれがあることです:

(1/Convert.ToDouble(textBox2) +1/Convert.ToDouble(textBox1))

textBox2.Texttextbox オブジェクトを double に変換できないため、これは である必要があります。

また、読みやすさのために、すべての変換を 1 行で行うのではなく、一度に 1 つずつ別の変数に変換してから、それらを使用することをお勧めします。また、どこが間違っているのかが明確になるため、この種の問題に苦しむ可能性が低くなります.

于 2013-05-02T10:20:49.083 に答える