问题描述
for(inti=0;i<3;i++){TextBoxtb=newTextBox();tb.Name="tb"+i.ToString();tb.Top=50+i*30;tb.Left=20;this.Controls.Add(tb);}string[]tbs=newstring[3];foreach(ControlcingroupBox9.Controls)if(cisTextBox){inti=0;tbs[i]=c.Text;i++;}
想要对创建的textbox进行输入合法性判断,鼠标单击textbox后全选输入框内容,取得键入值并进行计算如tb2=tb0+tb1。
解决方案
本帖最后由 starfd 于 2015-10-27 12:44:38 编辑
解决方案二:
你的int参数写在foreach循环里面,那你不是一直在对索引0的位置赋值,其它两个位置都是null
解决方案三:
TextBox[]tb;在外面申明,这样你可以直接使用bt[0]就是第一个,tb[2]就是第二个。。。。。。在窗口load+=时初始化这些控件并添加到界面,然后给每个控件事件,tb[0]值改变+=.......我希望你能明白我在说什么
解决方案四:
直接给textbox添加textchanged事件,textbox.ontextchanged+=new***********(AAtextbox_textchange)AAtextbox_textchange(objectsender,evente){这里你要干什么,加减乘除都可以。}上面添加事件忘了具体怎么写,在VS直接写一下,就看的到了。
解决方案五:
int.parse就可以
解决方案六:
textbox[]tb;for(inti=0;i<3;i++){tb=newtextboxtb[i].Name="tb"+i.ToString();tb[i].Top=50+i*30;tb[i].Left=20;this.Controls.Add(tb);}然后在load显示,tb[0]+=事件,忘记名字
解决方案七:
如果每次都是3个文本框,为什么不考虑做成自定义控件