现在有一个datagrid我想在最后的一个模板列的页眉加上一个ImageButton1,前台页面我写了一个js,想在后台的Page_load中通过以下语句
System.Web.UI.WebControls.ImageButton hl = new ImageButton();
hl = (ImageButton) datagrid.FindControl("ImageButton1");
hl.Attributes["onclick"] = "javascript:return AddLinkMan()";
调用它,但是它要出错,我该如何解决呀?

解决方案 »

  1.   

    Page_load里面不可以
    要在DataGrid的ITemDataBound事件里面if(e.Item.ItemIndex > -1)
    {
       System.Web.UI.WebControls.ImageButton hl = (ImageButton) datagrid.FindControl
    ("ImageButton1");
     if (hl != null)
        hl.Attributes["onclick"] = "javascript:return AddLinkMan()";}
      

  2.   

    在模板列的ImageButton1的ID设置为hl;
    System.Web.UI.WebControls.ImageButton h1;
    hl = (ImageButton) datagrid.FindControl("h1");
    hl.Attributes["onclick"] = "javascript:return AddLinkMan()";
      

  3.   

    不行,把那个ImageButton放在模板列的ItemTemplate中用e.Item替换 datagrid都可以实现,但是放在
    HeadTemplate中就不行,请各位高人帮帮忙
      

  4.   

    if(e.Item.ItemType == ListItemType.Header)
    {
       System.Web.UI.WebControls.ImageButton hl = (ImageButton) datagrid.FindControl
    ("ImageButton1");
     if (hl != null)
        hl.Attributes["onclick"] = "javascript:return AddLinkMan()";}