Button bt = new Button();
bt.Text = "12345678990";
bt.Visible=true;
this.Controls.Add(bt);

解决方案 »

  1.   

    是这样的:
    switch(i)
    {
    case 0:
    imagebuttoninnerhtml = "<asp:ImageButton id='ImageButton0' runat='server' ImageUrl='../image/m_delete.gif' AlternateText='"+userid+"' ToolTip='"+tableType+"'></asp:ImageButton>";
    break;
    case 1:
    imagebuttoninnerhtml = "<asp:ImageButton id='ImageButton1' runat='server' ImageUrl='../image/m_delete.gif' AlternateText='"+userid+"' ToolTip='"+tableType+"'></asp:ImageButton>";
    break;
    case 2:
    imagebuttoninnerhtml = "<asp:ImageButton id='ImageButton2' runat='server' ImageUrl='../image/m_delete.gif' AlternateText='"+userid+"' ToolTip='"+tableType+"'></asp:ImageButton>";
    break;
    case 3:
    imagebuttoninnerhtml = "<asp:ImageButton id='ImageButton3' runat='server' ImageUrl='../image/m_delete.gif' AlternateText='"+userid+"' ToolTip='"+tableType+"'></asp:ImageButton>";
    break;
    }
    innerHtml +="<table><tr>"+
    "<td width='115'align='middle'height='12'><font size='2'>"+userid+"&nbsp;</font></td>"+
    "<td width='105'align='middle'height='12'><font size='2'>"+username+"&nbsp;</font></td>"+
    "<td width='80'align='middle'height='12'><font size='2'>"+sex+"&nbsp;</font></td>"+
    "<td width='130'align='middle'height='12'><font size='2'>"+knowledge+"&nbsp;</font></td>"+
    "<td width='110'align='middle'height='12'>"+imagebuttoninnerhtml+"</td>"+
    "<td width='79'align='middle'height='12'><a href='"+questurl+"'target='_self'><img src='../image/isbest.gif'align='middle'border='0'></a></td>"+
    "</tr>"</table>;
    datahtml.InnerHtml += userdatahtm;结果imagebutton没有显示,
      

  2.   

    晕~Web控键不能用html代码来添加的
    你能添加的只是标准的HTML代码段
    添加服务器段控键只能用Page.Controls.Add(Control)
      

  3.   

    LinkButton btn=new LinkButton();
    this.Controls[1].Controls.Add(btn);
    btn.Text="123";
      

  4.   

    momoguagua(呱呱) 说的对,楼主添加的根本不是控件,而是一段普通的文本,动态添加控件应该象 CodingPCPiG(会Coding的猪)说的方法。--------------------------------
    AspNetPager 免费分页控件4.2版发布,同时发布最新源代码,欢迎下载:http://www.webdiyer.com
      

  5.   

    我要在一个表格中插入一个imagebutton按钮,并处理该按钮的onclick,共有22个按钮,每个按钮处理程序不一样,该怎么写
      

  6.   

    每个按钮都加一个this.Button1.Click += new System.EventHandler(this.Button1_Click);
    private void Button1_Click(object sender, System.EventArgs e)
    {
       ... ...
    }
      

  7.   

    你干吗不建22个按钮,用的时候Visiable=true,不用的时候Visiable=False
      

  8.   

    就你CSDN后面的“管理”按钮一样,我要取出该记录的ID号,然后在数据库中删除
      

  9.   

    你要是用DataGrid的话,他有专门的按钮列,有个命令"Delete"你可以在
    private void DG_DeleteCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)里
    对这个Delete命令所对应的按钮进行你的操作
      

  10.   

    不是用的DataGrid,是用的表格
    我照楼上说的做了,又出现了一点问题:
    code:
    ImageButton0 = new ImageButton();
    ImageButton0.AlternateText = userid;
    ImageButton0.ToolTip = tableType;
    ImageButton0.Click +=new ImageClickEventHandler(ImageButton_Click);
    Page.Controls.Add(ImageButton0);
    imagebuttoninnerhtml = "<asp:ImageButton id='ImageButton0' runat='server' ImageUrl='../image/m_delete.gif' AlternateText='"+userid+"' ToolTip='"+tableType+"'></asp:ImageButton>";
    innerHtml +="<table><tr>"+
    "<td width='115'align='middle'height='12'><font size='2'>"+userid+"&nbsp;</font></td>"+
    "<td width='105'align='middle'height='12'><font size='2'>"+username+"&nbsp;</font></td>"+
    "<td width='80'align='middle'height='12'><font size='2'>"+sex+"&nbsp;</font></td>"+
    "<td width='130'align='middle'height='12'><font size='2'>"+knowledge+"&nbsp;</font></td>"+
    "<td width='110'align='middle'height='12'>"+imagebuttoninnerhtml+"</td>"+
    "<td width='79'align='middle'height='12'><a href='"+questurl+"'target='_self'><img src='../image/isbest.gif'align='middle'border='0'></a></td>"+
    "</tr></table>";
    datahtml.InnerHtml += userdatahtm;出现的错误:
    类型“ImageButton”的控件“_ctl1”必须放在具有 runat=server 的窗体标记内。 我查来查去,我的from 、div 都是runat="server"
    不知道是怎么回事,老大帮忙查一下代码
      

  11.   

    这个我也不太清楚,没有用过
    不过这句
    imagebuttoninnerhtml = "<asp:ImageButton id='ImageButton0' runat='server' ImageUrl='../image/m_delete.gif' AlternateText='"+userid+"' ToolTip='"+tableType+"'></asp:ImageButton>";
    就不要要啦
      

  12.   

    momoguagua(呱呱)兄,出来了,改了一个字符:queryform.Controls.Add(ImageButton0);
    queryform为form,只是位置不正确,再帮忙想想看!
      

  13.   

    你可以给你的表格的<td>或者<tr>元素设定为runat="server" id="td1"
    然后对这个<td>或者<tr>元素进行操作,td1.Controls.Add(Control)你这个控键就被添加在这个表格的<td>的后面了
    或者
    如果你的窗口布局是MS_POSITIONING="GridLayout"这种类型的,看你的<body>属性
    你可以设定这个button的style="Z-INDEX: 101; LEFT: 232px; POSITION: absolute; TOP: 144px"属性来定位这个Button的位置
    不过这个方法我没用过,<td>的那个方法我用过可以实现,不过就是不太灵活
      

  14.   

    LEFT是这个控件横坐标,TOP是纵坐标,原点在屏幕的左上角,Z-INDEX是这个控件的三维的坐标,标记这个控件是否在其他的控件的上面或者下面(对于DropDownList好像无效,所有控件都在DropDownList的下面)
      

  15.   

    上面的代码看一下,table是自动生成的
      

  16.   

    改这样:
    "<td width='110'align='middle'height='12' runat="server" id='td1'>"+imagebuttoninnerhtml+"</td>"
    在cs文件里面类的下面加:protected System.Web.UI.HtmlControls.HtmlTableCell td1;
    td1.Controls.Add(ImageButton0)
    你看看可以不可以
      

  17.   

    那个id="td1"你改双引号看一下
      

  18.   

    同志们,我写出来了:
    datatable = new Table();
    datatable.Font.Name = "宋体";
    datatable.Font.Size = FontUnit.XSmall;
    datatable.Width = 619;
    datatable.BackColor = ColorTranslator.FromHtml("#f0f0f0");
    datatable.BorderStyle = BorderStyle.Solid;
    datatable.BorderWidth = 1;
    datatable.GridLines = GridLines.Both;
    datatable.CellPadding = 0;
    datatable.CellSpacing = 0;
    for( int i = 0; i < ds.Tables[0].Rows.Count;i++)
    {
    datatable.Rows.Add(InsertUserdata(i));
    }
    ds.Clear();
    datahtml.Controls.Add(datatable);private TableRow InsertUserdata(int i)
    {
    TableRow tablerow= new TableRow();
    TableCell tablecall1= new TableCell();
    TableCell tablecall2= new TableCell();
    TableCell tablecall3= new TableCell();
    TableCell tablecall4= new TableCell();
    TableCell tablecall5= new TableCell();
    TableCell tablecall6= new TableCell();
    string imagebuttoninnerhtml = "";
    string innerHtml = "";
    string questurl = "";
    string tableType = ds.Tables[0].Rows[i]["tabletype"].ToString();
    string userid = ds.Tables[0].Rows[i]["drnc"].ToString();
    string username = ds.Tables[0].Rows[i]["xinm"].ToString();
    string sex = ds.Tables[0].Rows[i]["xinb"].ToString();
    string knowledge = ds.Tables[0].Rows[i]["whcd"].ToString();
    if(tableType == "mjf")
    questurl = "persondataadmin.aspx?userid="+userid;
    else if(tableType == "xz")
    questurl = "administerdataadmin.aspx?userid="+userid;
    switch(i)
    {
    case 0:
    ImageButton0 = new ImageButton();
    ImageButton0.ID = "ImageButton0";
    ImageButton0.AlternateText = userid;
    ImageButton0.ToolTip = tableType;
    ImageButton0.ImageUrl = "../image/m_delete.gif";
    ImageButton0.Click +=new ImageClickEventHandler(ImageButton_Click);
    imageButton = ImageButton0;
    userdatalink = new HyperLink();
    userdatalink.NavigateUrl = questurl;
    userdatalink.ImageUrl = "../image/isbest.gif";
    break;
    case 1:
    ImageButton1 = new ImageButton();
    ImageButton1.ID = "ImageButton1";
    ImageButton1.AlternateText = userid;
    ImageButton1.ToolTip = tableType;
    ImageButton1.ImageUrl = "../image/m_delete.gif";
    ImageButton1.Click +=new ImageClickEventHandler(ImageButton_Click);
    imageButton = ImageButton1;
    userdatalink = new HyperLink();
    userdatalink.NavigateUrl = questurl;
    break;
    case 2:
    ImageButton2 = new ImageButton();
    ImageButton2.ID = "ImageButton2";
    ImageButton2.AlternateText = userid;
    ImageButton2.ToolTip = tableType;
    ImageButton2.ImageUrl = "../image/m_delete.gif";
    ImageButton2.Click +=new ImageClickEventHandler(ImageButton_Click);
    imageButton = ImageButton2;
    userdatalink = new HyperLink();
    userdatalink.NavigateUrl = questurl;
    break;
    }
    tablecall1.Text = userid;
    tablecall1.Width = 115;
    tablecall1.Height = 12;
    tablecall2.Text = username;
    tablecall2.Width = 105;
    tablecall2.Height = 12;
    tablecall3.Text = sex;
    tablecall3.Width = 80;
    tablecall3.Height = 12;
    tablecall4.Text = knowledge;
    tablecall4.Width = 130;
    tablecall4.Height = 12;
    tablecall5.Controls.Add(imageButton);
    tablecall5.Width = 110;
    tablecall5.Height = 12;
    tablecall6.Controls.Add(userdatalink);
    tablecall6.Width = 130;
    tablecall6.Height = 12;
    tablerow.VerticalAlign = VerticalAlign.Middle;
    tablerow.HorizontalAlign = HorizontalAlign.Center;
    tablerow.Cells.Add( tablecall1);
    tablerow.Cells.Add( tablecall2);
    tablerow.Cells.Add( tablecall3);
    tablerow.Cells.Add( tablecall4);
    tablerow.Cells.Add( tablecall5);
    tablerow.Cells.Add( tablecall6);
    return tablerow;
    }原因很简单,用html的table不行,这次我用的是C#的Table控件谢谢大家的参于,现在开始散分:
      

  19.   

    不知道为什么,我是在页面上直接定义的table控件就可以用