_imageButton = new ImageButton();
_imageButton.ImageUrl = "close.gif";
if (_signal != null &&  _signal.Trim().Length > 0)
{
_imageButton.ID = _signal.Trim() + "-" + Convert.ToString(i+1);
}
else
{
_imageButton.ID = "e" + Convert.ToString(i+1);
}
_imageButton.Command += new System.Web.UI.WebControls.CommandEventHandler(this.ImageButton_Command);
_imageButton.ImageAlign = ImageAlign.AbsMiddle;
_tableCell.Controls.Add(_imageButton);
_tableRow.Cells.Add(_tableCell);
老是提示_imageButton控件必须加载runat="server"的窗体中?难道我的代码有错?谢谢指点

解决方案 »

  1.   

    你看看你的 HTML中 有没有FROM1 标签 而且必须RUNAT=SERVER
      

  2.   

    看看你的form:<form id="from1" runat="server">
      

  3.   

    <%@ Page language="c#" Codebehind="WebForm1.aspx.cs" AutoEventWireup="false" Inherits="WebApplication1.WebForm3" %>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
    <HTML>
    <HEAD>
    <title>WebForm1</title>
    <meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
    <meta name="CODE_LANGUAGE" Content="C#">
    <meta name="vs_defaultClientScript" content="JavaScript">
    <meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
    </HEAD>
    <body MS_POSITIONING="GridLayout">
    <form id="Form1" method="post" runat="server">
    &nbsp;
    </form>
    </body>
    </HTML>
    这是我的前台代码,各位老大帮帮忙吧,THX
      

  4.   

    你把这个〈asp:Button ID=_imageButton runat=server></asp:button>加如这里
    <form id="Form1" method="post" runat="server">
    〈 </form>
    成为这样
    <form id="Form1" method="post" runat="server">
    〈asp:Button ID=_imageButton runat=server></asp:button>
    </form>
    就可以了
      

  5.   

    this.Controls.Add(imageButton);
    这样写也出错?为什么?我在前台有RUNAT="SERVER"啊
      

  6.   

    在您的页面行先加一个 HTML Table  ,然后将 imageButton 动态的加入到此Table中,这样就可以确保imageButton在runat="server"的Form 中
      

  7.   

    自己解决了,主要是要找到PAGE.FORM1,没理解啊