C# 调用动态新增控件
publicvoidadd_control_textbox(inta,intb,intc,intd,inte,Stringf)//增加控件;a为记数器,记录新增了多少te...
public void add_control_textbox(int a,int b,int c,int d,int e,String f)//增加控件;a为记数器,记录新增了多少textbox;
{
a = a + 99;
TextBox textBox = new TextBox();
textBox.Name = "textBox" + a;
textBox.Location = new Point(b, c);
textBox.Size = new Size(d, e);
textBox.Text = f;
tabPage2.Controls.Add(textBox);
}
public int i=0
i++;
add_control_textbox(i,281,83+i*26-26,100,21,"");
如上,新增textBox控件,如何调用?
textBox+i.Text="你";(该怎么写?)
tbxTemp = (TextBox)(this.tabPage2.Controls.Find("textBox" + i.ToString(), false))[0];(提示索引超出了数组界tbxTemp = (TextBox)(this.Controls.Find("textBox" + i.ToString(), false))[0];(也不行)
tabPage2.Controls.Add(textBox); 这句已加到tabpage2中了实际运行结果也看的到.
---------------------
老提示数组超出界限.我汗~ 展开
{
a = a + 99;
TextBox textBox = new TextBox();
textBox.Name = "textBox" + a;
textBox.Location = new Point(b, c);
textBox.Size = new Size(d, e);
textBox.Text = f;
tabPage2.Controls.Add(textBox);
}
public int i=0
i++;
add_control_textbox(i,281,83+i*26-26,100,21,"");
如上,新增textBox控件,如何调用?
textBox+i.Text="你";(该怎么写?)
tbxTemp = (TextBox)(this.tabPage2.Controls.Find("textBox" + i.ToString(), false))[0];(提示索引超出了数组界tbxTemp = (TextBox)(this.Controls.Find("textBox" + i.ToString(), false))[0];(也不行)
tabPage2.Controls.Add(textBox); 这句已加到tabpage2中了实际运行结果也看的到.
---------------------
老提示数组超出界限.我汗~ 展开
4个回答
展开全部
你是不是在New这些textBox控件的时候,没有把它加入到tabPage2上啊?
在textBox 创建并设定完毕后, 使用this.tabPage2.Controls.Add(textBox控件名);
应该没有问题.
---------------------
TextBox tbxTemp;
tbxTemp = (TextBox)(this.Controls.Find("textBox" + i.ToString(), false))[0];
tbxTemp就是你要操作的名称为:"Text+数字i"的TextBox控件对象的句柄,想怎么用怎么用.
tbxTemp.Text = "你";
在textBox 创建并设定完毕后, 使用this.tabPage2.Controls.Add(textBox控件名);
应该没有问题.
---------------------
TextBox tbxTemp;
tbxTemp = (TextBox)(this.Controls.Find("textBox" + i.ToString(), false))[0];
tbxTemp就是你要操作的名称为:"Text+数字i"的TextBox控件对象的句柄,想怎么用怎么用.
tbxTemp.Text = "你";
展开全部
((TextBox)tabPage2.FindCotrol("textBox"+i)).Text="你";
大概这么个思路,写得可能不对!
大概这么个思路,写得可能不对!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
控件名不能那么写
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
楼主的代码需要改
FindControl应该是按照ID进行FIND的
TextBox textBox = new TextBox();
//这里textBox.Name改为ID
textBox.Name = "textBox" + a;
textBox.Location = new Point(b, c);
textBox.Size = new Size(d, e);
textBox.Text = f;
tabPage2.Controls.Add(textBox);
同样下面的代码如下
foreach(Control c in Controls)
{
if (c.ID=="textBox1")
{
((TextBox)c).Text="找到了!";
break;
}
}
最后 这里找的是ID
tbxTemp = (TextBox)this.tabPage2.Controls.Find("textBox" + i.ToString())
FindControl应该是按照ID进行FIND的
TextBox textBox = new TextBox();
//这里textBox.Name改为ID
textBox.Name = "textBox" + a;
textBox.Location = new Point(b, c);
textBox.Size = new Size(d, e);
textBox.Text = f;
tabPage2.Controls.Add(textBox);
同样下面的代码如下
foreach(Control c in Controls)
{
if (c.ID=="textBox1")
{
((TextBox)c).Text="找到了!";
break;
}
}
最后 这里找的是ID
tbxTemp = (TextBox)this.tabPage2.Controls.Find("textBox" + i.ToString())
参考资料: 傲博知识库
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询