这么做:<ItemTemplate>
<asp:linkButton id="Button1" runat="server" CommandName="aaa">触发Reset_click事件</asp:linkButton>
然后在DataGrid的ItemCommand事件里:
if(e.CommandName=="aaa")
........你的处理程序

解决方案 »

  1.   

    to gshope(北京.Net):
    谢谢,我照着你的方法做了,可是结果一样,什么也没有触发<asp:linkButton id="Button1" runat="server" CommandName="Test">触发Reset_click事件</asp:linkButton>Private Sub MyDg_ItemCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs) Handles MyDg.ItemCommand
    ◎     Response.Write(e.CommandName)'这里设了断点,可是没有进来
    End Sub
      

  2.   

    你应该在 OnInit里做这事:Protected Overrides Sub OnInit(ByVal args As EventArgs)
    Super.OnInit(args)
    AddHandler Me.ItemDataBound, AddressOf DataBound
    ....
      

  3.   

    to: Lostinet(『 迷失网络 』) 
    谢谢,我照你说的方法做了,还是没用啊。
    我现在的问题是"linkbutton的模板列触发OnCommand事件的时候,OnCommand事件怎么也无法触发",而ItemDataBound事件我是在控件内部能正常触发的。
      

  4.   

    用gshope(北京.Net) 的方法,
    然后注意:
    在 InitializeComponent()中,一定还得有下面一行this.DataGrid1.ItemCommand += new System.Web.UI.WebControls.DataGridCommandEventHandler(this.DataGrid1_ItemCommand);我这个是C#语法的,你自己改为VB.net
      

  5.   


    楼上各位大大:
    我似乎找到问题所在,可是还是没办法分析出解决方法
    我将控件中的内容全部去掉,只留下下面这一段
    <DefaultProperty("EnableHtmlEncode"), ToolboxData("<{0}:MyDatagrid runat=server></{0}:MyDatagrid>")> Public Class MyDatagrid
        Inherits System.Web.UI.WebControls.DataGridEnd Class
    结果ItemCommand时间可以触发了!然后我加上
    <DefaultProperty("EnableHtmlEncode"), ToolboxData("<{0}:MyDatagrid runat=server></{0}:MyDatagrid>")> Public Class MyDatagrid
        Inherits System.Web.UI.WebControls.DataGrid
        Protected Overrides Sub CreateChildControls()
    '中间没有代码
        End Sub
    End Class
    原来的问题又出现了,似乎事件无法触发与CreateChildControls()有关,
    请各位大大不吝赐教!
      

  6.   

    最近很忙,差点忘了揭帖:)
    这个问题暂时解决了,最后把createchildcontrol()去掉,把里面逻辑代码移到oninit里,可以触发oncommand事件了,可是还是不明白怎么回事?而且就算CreateChildControl就算里面是空的也不行,一定要完全删掉才行。奇怪?!
    揭帖先