添加一个按钮列,定义CommandName,例如“test”;
在DataGrid的ItemCommand事件里写代码:
if(e.CommandName == "test")
{
  ........
}

解决方案 »

  1.   

    实际上所谓的默认的按钮列是一模一样的,只不过给你填如"Select"、"Delete"等不同的CommandName
    在DataGrid的ItemCommand事件里写代码可以区别处理:
    if(e.CommandName == "test")
    {
      ........
    }
    else if if(e.CommandName == "Select")//大小写区分
    {
      ......
    }
      

  2.   

    是我哪里没有设置好呀....我的按钮就是  B  命令名为:B  下面的语句就是不行.还要在datagrid上做什么设置吗?
       if (e.CommandName=="B")
    {
       Response.Redirect("ssw.aspx");
    }
      

  3.   

    没有写这个
    #region Web 窗体设计器生成的代码
    override protected void OnInit(EventArgs e)
    {
    //
    // CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
    //
    InitializeComponent();
    base.OnInit(e);
    }

    /// <summary>
    /// 设计器支持所需的方法 - 不要使用代码编辑器修改
    /// 此方法的内容。
    /// </summary>
    private void InitializeComponent()
    {    
    this.Load += new System.EventHandler(this.Page_Load);
    this.DataGrid1.ItemCommand+=new DataGridCommandEventHandler(DataGrid1_ItemCommand);
    }
    #endregion
      

  4.   

    问题已经解决,是我没有在page_Load中做if(!IsPostBack)判断;谢谢