<form runat=server>给FORM加上runat=server

解决方案 »

  1.   

    问题是我的button 没有放到Form里面啊!
      

  2.   

    在aspx页面文件的<body></body>内加入
    <form id="Form1" method="post" runat="server">
    ...
    </form>
    而且Page.Controls.Add(ButAdd)这样不行,最好用WEB窗体的Table控件,或者Panel,PalceHolder控件容器!然后在这些控件容器添加新控件,这样可以保证新添加的控件在<form>标记内
      

  3.   

    aspx文件里,添加 <form id="Form1" method="post" runat="server">
    <asp:Button id="ButAdd" Text="button" runat="server"></asp:Button >
    </form>
      

  4.   

    要加上个panel控件 在panel里添加你的BUTTON
    panel1.Controls.Add(ButAdd);
      

  5.   

    不要用Page.Controls.Add(),可在<form runat=server></form>中加入一个panel并先隐藏,要添加按钮的时候可用panel1.Controls.Add(bt);panel1.visible= true;
      

  6.   

    你的button需要放到<form runat=server></form>中否则就会出现这样的问题
      

  7.   

    对.前代码必须放在有runat=server的form内才行.
      

  8.   

    由于你使用的是服务器控件,所以要保证他被加在FORM(RUN AT=SERVER)里面,用PAGE。ADD并不能保证,
    所以,你可以先用服务器控件PANAL,然后PANAL.add(botton)如果你不想放在FORM里面,可以用HTML
      

  9.   

    Page.Controls[1].Controls.Add(ButAdd);
      

  10.   

    可以在aspx页面添加一个panel
    然后代码里
    panelid.Controls.Add(ButAdd);
      

  11.   

    Page不能作为容器添加子控件可用PalceHolder,Panel,TD等控件
      

  12.   

    HtmlForm hf=(HtmlForm)APage.FindControl("Form1");
    hf.Controls.Add(ButAdd);
      

  13.   

    HtmlForm hf=(HtmlForm)this.Page.FindControl("FormName");
    hf.Controls.Add(ButAdd);
      

  14.   

    Page.Controls[1].Controls.Add(ButAdd);
      

  15.   

    把runat=server的服务器端控件都放入 <Form runat=server>里面去