感谢您使用微软的产品。可以通过用户界面和实物逻辑分离的方式实现动态的添加webcontrol.假设主文件名为dynamic.aspx,其相关的文件名为dynamic.cs.在dynamic.cs中生成一个继承page的子类叫dyndisplay,在该类中创建你想要动态生成的webcontrol,比如textbox,dropdownlist,botton,form.然后override OnInit函数,在其中对webcontrol进行初始化(诸如位置,所需绑定的事件),用form加在webcontrol。然后在Page_Load重视现在网页中显示出来。关于用户界面和事务逻辑分离方式具体的实现,您可以参考:HOW TO: Dynamically Create Controls in ASP.NET by Using Visual C# .Net
http://support.microsoft.com/default.aspx?scid=kb;en-us;q317794- 微软全球技术中心 VB技术支持本贴子以“现状”提供且没有任何担保,同时也没有授予任何权利。具体事项可参见使用条款
(http://support.microsoft.com/directory/worldwide/zh-cn/community/terms_chs.asp)。
为了为您创建更好的讨论环境,请参加我们的用户满意度调查
(http://support.microsoft.com/directory/worldwide/zh-cn/community/survey.asp?key=(S,49854782))。

解决方案 »

  1.   

    TextBox txt = new TextBox();
    this.Controls[1].Controls.Add(txt);
      

  2.   

    我的意思是我并不知道我要用的控件有多少个,是在程序开始运行后才知道的.我要用的方法是用Response.write()的方法添加.该如何做?
      

  3.   

    1.ASP.NET中有web form control和HTML control,web form control在接受http request后由ASP.NET转换成HTML tag,传到客户端。因此建议使用icyer() 的方法,在服务端获得需要添加的控件个数后,用循环添加.2.如果使用Response.write()只能添加html control。和ASP是一样的
    Response.write("<Input type=text name=... value=...>");
      

  4.   

    楼上,我做过这样的程序,是textbox,label
    这两个控件的属性信息放在数据库中,和c/s是的属性是通用的,
    然后你取出这些信息,每一条记录付给一个textbox或label就成了,具体过程如下:
    SqlDataReader readLbl=admin.GetLabels(typeID);//取得所有Label的属性while (readLbl.Read())
    {
    newLbl=new Label();
    newLbl.Style["LEFT"]=readLbl.GetInt32(0).ToString()+"px";
    newLbl.Style["TOP"]=readLbl.GetInt32(1).ToString()+"px"; newLbl.Style["POSITION"]="absolute";
    //newLbl.Style["position"]="relative";错误
    newLbl.Width=readLbl.GetInt32(2);
    newLbl.Height=readLbl.GetInt32(3);
    //newLbl.Text=readLbl.GetString(4);
    newLbl.Text=readLbl["cLabelCaption"].ToString();
    newLbl.Style["Font-Names"]=readLbl.GetString(5);
    newLbl.Style["Font-Size"]=readLbl.GetInt32(6).ToString()+"pt";
    newLbl.Style["ForeColor"]=readLbl.GetString(7);
    //this.Controls.Add(newLbl);错误
    this.Controls[1].Controls.Add(newLbl);
    }textbox和他是一样的,注意position用absolute属性即可如果还要添加按钮及其事件,请留言