让我解释一下我的计划将如何:
1.我有一个文本框1,用户将输入一个数字 2.我有一个button1,它会将textbox1中的数字存储到int Max
中这是编码
private void button1_Click(object sender, EventArgs e)
{
Max = int.Parse(textBox1.Text);
fun = new TextBox[Max];
for (int i = 0; i < Max; i++)
{
if (i > 0)
{
y = y + 26;
}
fun[i] = new TextBox();
fun[i].Location = new System.Drawing.Point(44, y);
fun[i].Text = "Test";
}
}
现在唯一的问题是它根本不会出现,因为我不知道要在表单上显示什么代码。
答案 0 :(得分:1)
您需要使用TextBox
方法在表单上添加fun[i]
控件Controls.Add()
(在运行时创建)。
试试这个:
this.Controls.Add(fun[i]);
完整代码:
private void button1_Click(object sender, EventArgs e)
{
Max = int.Parse(textBox1.Text);
fun = new TextBox[Max];
for (int i = 0; i < Max; i++)
{
if (i > 0)
{
y = y + 26;
}
fun[i] = new TextBox();
fun[i].Location = new System.Drawing.Point(44, y);
fun[i].Text = "Test";
this.Controls.Add(fun[i]);
}
}
答案 1 :(得分:1)
如果我理解正确,你想动态创建控件并在表单中显示它?看起来您的代码没问题,您需要将控件添加到表单以在表单中显示它。这段代码可以帮到你。
int y = 26;
var Max = int.Parse(textBox1.Text);
var fun = new TextBox[Max];
for (int i = 0; i < Max; i++)
{
if (i > 0)
{
y += 26;
}
fun[i] = new TextBox();
fun[i].Location = new System.Drawing.Point(44, y);
fun[i].Text = "Test";
Controls.Add(fun[i]);
}