本帖最后由 gaogaohui09 于 2010-12-08 11:34:01 编辑

解决方案 »

  1.   

    你可以加个循环什么的  designer.cs这里面是控件对象
      

  2.   

    将panel 里面的内容做成用户控件.
      

  3.   

    Button btn = new Button();
                btn.Name = "btnName";
                btn.Text = "点击";
                btn.Location = new Point(10, 10);
                Panel p = new Panel();
                p.Location = new Point(10, 10);
                p.Width = 100;
                p.Height = 100;
                p.BackColor = Color.Orange;
                p.Controls.Add(btn);
                this.Controls.Add(p);
      

  4.   

                Field field = new Field();  //用户控件
                field.Location = new System.Drawing.Point(15, 51);
                field.Name = "field";
                field.Size = new System.Drawing.Size(844,259);
                field.TabIndex = 2;
                groupBox1.Controls.Add(field);
                this.Controls.Add(field);可是创建完后,主窗体没有显示,应该不是坐标的问题?
      

  5.   


     //如果是第一次动态生成控件
                if (y == 51)
                {
                    Field field = new Field();
                    field.Location = new System.Drawing.Point(15, y);
                    field.Name = "field"+tab;   //控件名称
                    field.Size = new System.Drawing.Size(713, 253);
                    field.TabIndex = tab;
                    groupBox1.Controls.Add(field);
                    btnFill.Text = "继续填写";
                    y += 26;
                    tab++;
                }
    //在第一次生成控件的正下方,再次生成一个控件
                else
                {
                    Field field = new Field();
                    field.Location = new System.Drawing.Point(15, y);
                    field.Name = "field" + tab;   //控件名称
                    field.Size = new System.Drawing.Size(713, 253);
                    field.TabIndex = tab;
                    groupBox1.Controls.Add(field);
                    y += 26;
                    tab++;
                }为什么else部分之后,第二次生成的控件没有显示出来?请教