我想实现的是将textBox1的值赋给x[0],texBox2给x【1】,textbox3给x[2],textbox4给y[0],目前主要问题是类型转换这里报错“输入字符串的格式不正确”
private void button1_Click(object sender, EventArgs e)
{
double[] x = new double[3];
double[] y = new double[3];
double[] HA = new double[3];
List<TextBox> tbList = new List<TextBox>();
for(int i = 1;i<=9;i++)
{
TextBox tb = new TextBox();
tbList.Add(tb);
}
for (int i = 1; i < 4; i++)
{
x[i] = double.Parse(tbList[i].Text);//**报错**
}
for (int i = 4; i < 7; i++)
{
y[i] = double.Parse(tbList[i].Text);
}
for (int i = 7; i < 9; i++)
{
HA[i] = double.Parse(tbList[i].Text);
}
解决了,不再使用for循环往List<>里面添加value而是一个一个加就可以了。
tbList[i].Text
这里你要确保每个文本框的内容,是有效的数字,不能为空。另外下标应该从0而不是1开始
for(int i = 1;i<=9;i++)
{
TextBox tb = new TextBox();
tbList.Add(tb);
}
这里的tb是刚创建的,Text属性为"",这是不能转换的。可以tbList.Add(tb);前面加上tb.Text = "0";
不知道你这个问题是否已经解决, 如果还没有解决的话: