下面是小弟写的不成文代码
Form Frm = new Form();
Frm.Text = "查 询";
Frm.FormBorderStyle = FormBorderStyle.FixedToolWindow;
Frm.StartPosition = FormStartPosition.CenterScreen;
Frm.ShowInTaskbar = false;
Frm.ShowDialog();
-------------------------------
这些代码就是自动生成一个查询窗体。
现在我想问的是:
1、怎么在自动生成的窗体上再自动生成一些控件。比如生成一个文本输入框,一个日期输入框(查询条件多嘛)
2、自动生成的输入框个数可以设置,比如:我需要生产两个文本框,一个日期输入框。
3、生成完输入框后,当然要生成一个‘确认’按钮,和一个‘取消’按钮了。。
先谢谢了

解决方案 »

  1.   

    比如生成一个文本输入框Form Frm = new Form(); 
    Frm.Text = "查 询"; 
    Frm.FormBorderStyle = FormBorderStyle.FixedToolWindow; 
    Frm.StartPosition = FormStartPosition.CenterScreen; 
    Frm.ShowInTaskbar = false; 
    TextBox t = new TextBox();
    Frm.Controls.Add(t);
    Frm.ShowDialog();
      

  2.   

    不明白LZ为什么要动态生成这样多东西呢!
    你完全可以做一个Uerctrol,岂不更简单.如果一定,要一个一个控件动态添加,那写的代码还比较多呢.Form Frm = new Form(); 
    Frm.Text = "查 询"; 
    Frm.FormBorderStyle = FormBorderStyle.FixedToolWindow; 
    Frm.StartPosition = FormStartPosition.CenterScreen; 
    TextBox txt=new TextBox();
    txt.Id="txtInput";
    txt.Location= ;//计算放的位置,
    Frm.Controls.Add(txt);Button btn=new Button();  //其他的都类似了
    btn.Click+=EventHanlder(btn_Click); //与button关联的事件.其他地方都类似了.
    ...
    Frm.ShowInTaskbar = false; 
    Frm.ShowDialog(); 
      

  3.   

    先谢谢各位
    1、回答:xray2005 :
       因为如果我有100个模块需要用到查询,而我的查询需要写在弹出的小窗体上;按照我目前的做法就需要增加 100个查询窗体了。所以我想到自动生成这个查询窗体,这样每个模块需要查询时,直接调用‘自动生成窗体’的函数就可以了。
       “你完全可以做一个Uerctrol,岂不更简单. ”不是很明白,请赐教
    2、各位的自动生成输入框都可以了。但是我还有一个要求:
       生成的输入框是可以控制个数和类型的,比如:我需要生产两个文本框,一个日期输入框。 正如我第二点所说。再次谢谢了
      

  4.   

    100个查询窗体???new100个实例就好。
    Uerctrol用户控件,里面包含多个控件,做好直接add到form就可以了。
    另外。你可以先在窗体上设置好,再在designer拷代码出来就好。