我做了一个窗体,里面有50多个textbox记录的是某人一天的体征值(体温、血压、输液量等),我不太会用datagridview,我就用的textbox,请问如何将多个textbox通过循环的方式将其内容存放到数据库中? 我的textbox不是动态生成的,是摆上去的。 我试过用ILIST,但是没想明白。 谢谢!

解决方案 »

  1.   

    有什么不明白的,把text作为参数传给sql语句中的对应的字段值就行了
      

  2.   

    insert into tablename set (field1, field1) values (@value1, @value2)
      

  3.   

    如果那样传参 我得把50多个textbox的值作为参数传过去吗?那样太不好了 
      

  4.   


    //遍历窗体内的TextBox控件,将其值放入集合中
    //将你需要的TextBox的Tag属性都设为一样
    List<string> list=new List<string>();
    foreach(Control ctl in this.controls)//
    {
        if(ctl is TextBox)
        {
           TextBox txt=(TextBox)ctl;
           if(txt.Tag==1)//多做一步判断, 确保这个是你需要的TextBox      
           {
              list.Add(txt.Text);
           }
        }
    }
    //......将集合中的数据存入数据库
      

  5.   


    五十多个遍历页面上的控件
    你把参数用个hashtable存起来控件取名字估计要技术点这样才好对应参数
      

  6.   

    List<string> list=new List<string>();
    foreach(Control ctl in this.controls)//
    {
        if(ctl is TextBox)
        {
           TextBox txt=(TextBox)ctl;
           if(txt.Tag==1)//多做一步判断, 确保这个是你需要的TextBox      
           {
              list.Add(txt.Text);
           }
        }
    }
      

  7.   

    把textbox命名为tb_height,这样的,这个height就是对应的数据库中的字段名,然后遍历窗体上的textBox,符合这个命名规范的的就讲字段名和textbox的值加到sql语句中,我以前就是这么弄的
      

  8.   

    将这些textbox放入一个panel或groupbox中,
    然后遍历其中的controlsfor(int i=0;i<panel.Controls.count;i++)
    {
        TextBox txt = (TextBox)panel.Controls[i];
        /*更新数据库的语句*/
    }你可以将textbox的id定义为有意义的名称,
    这样你可以跟据textbox的id得知所存放的值的意义
      

  9.   

    1、控件名称采用字段名字,这样你循环的时候就变得简单多了2.采用。net绑定技术,非常简单,control。DataBindings.Add()将控件和字段绑定
      提取DataTable到内存,逐字段绑定到控件上(一个循环即可绑定全部控件),
      绑定后控件值的变化直接刷新到内存表中,然后报错内存表即可
      

  10.   

    定义对象人给对象添加50个属性保存时候,给人对象属性赋值。传递对象在sql组织阶段,根据属性对应字段赋值,保存即可没有什么技巧而言,纯粹代码罗列