这两个按钮的CommandName是update和cancel么

解决方案 »

  1.   

    请问搂主你的datagrid事件时自己声明的吗?
      

  2.   

    有可能不是消失拉,是你电击以后状态没有变化
    private void DgGroup_UpdateCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
    {
    从新帮定数据
    }private void DgGroup_EditCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
    {
    DgGroup.EditItemIndex = e.Item.ItemIndex;
    DgGroupDataBind();
    }
    你看你是不是没有写这个
      

  3.   

    不是自己声明的,是用属性生成器生成的
    更新的代码如下:
    protected void DataGrid1_UpdateCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
    {
    DataGrid1.EditItemIndex=e.Item.ItemIndex;
    BindGrid();  //第一步:根据索引找出要更新的行
    string prodidkey=DataGrid1.DataKeys[e.Item.ItemIndex].ToString();
    //第二步;DataGrid行中更新值
    string prodname,prodprice,prodcate,prodfun,prodres;
    TextBox tb;
    tb=(TextBox)e.Item.Cells[2].Controls[0];
    prodname=tb.Text;
    tb=(TextBox)e.Item.Cells[3].Controls[0];
    prodprice=tb.Text;
    tb=(TextBox)e.Item.Cells[4].Controls[0];
    prodcate=tb.Text;
    tb=(TextBox)e.Item.Cells[5].Controls[0];
    prodfun=tb.Text;
    tb=(TextBox)e.Item.Cells[6].Controls[0];
    prodres=tb.Text;
    //第三步:连接数据库,定义数据中的值
    System.Data.IDbConnection con=null;
    System.Data.IDbCommand comm=null;
    string strsql="update vt_frmprod set prod_name="+"'"+prodname+"'"
    +","+"prod_price='"+prodprice+"'"+","+"prod_cate='"
    +prodcate+"'"+","+"prod_fun='"+prodfun+"'"+","+"prod_res='"+prodres+"'"
    +"where prod_id='"+prodidkey+"'"; 
    //string strsql="delete from vt_prod where prod_id='17'"; Microsoft.Practices.EnterpriseLibrary.Data.Database db=  Microsoft.Practices.EnterpriseLibrary.Data.DatabaseFactory.CreateDatabase();
    if (db!=null)
    con=db.GetConnection();
    comm=con.CreateCommand();
    comm.CommandText=strsql;
    con.Open();
    comm.ExecuteNonQuery();
    con.Close();
    DataGrid1.EditItemIndex=-1;
    BindGrid();
    }