利用事件委托看看.
button.Click += new System.EventHandler(insertbutton_Click);

解决方案 »

  1.   

    此程序中单击按钮 在最后一行生成一个button和几个textbox
    其中是不是 OnItemCreated 不对啊??
      

  2.   

    (不好意思,我这全用C#来说明,你可以理解后用VB.net描述也一样)
    顺便说下,要注意的是在DataGrid的 ItemCreated 事件里,还要先限定你 Button 所在范围,即是Header、Item、Footer、EditItem等等里,不然在DataGrid这个控件创建Item触发ItemCreated事件时,它会从页头、项一直到页尾都运行一遍 FindControl,就会出错了。
    所以,一般我们都是在项 Item 里绑定 button 的,所以 ItemCreated 里的代码大致如下:ListItemType elemType = e.Item.ItemType;    // 设置ListItem类型
    if( elemType == ListItemType.Item )   // 如果类型是Item项,而非Header或Footer等时
    {
        LinkButton btn = (LinkButton)e.Item.Cells[1].FindControl("insertbutton");
        button.Click += new System.EventHandler( insertbutton_Click );
    }
      

  3.   

    没错,是C#的。区别是 button.Attribute.Add("OnClick", "") 这句是设置 button 这个在前端 javascript 里的 OnClick 事件,而事件委托是在服务器端运行的。
      

  4.   

    小小,你给我的短消息已经收到。问题已经搞定。采用方法正如liuhm所描述。