protected void gvRecord_RowDeleting(object sender, GridViewDeleteEventArgs e)
    {
        string id = gvRecord.DataKeys[e.RowIndex].Value.ToString();
        string sql = "delete from 晚归与考勤表 where 晚归与考勤ID=" + id;
        SqlConnection conn = Conncetion.getConn();
        SqlCommand cmd = new SqlCommand(sql,conn);
        conn.Open();
        cmd.ExecuteNonQuery();
        BindGridView();//重新绑定
    }
我在GridView里点了“删除”,数据库的相应记录就已经被删除了,可是页面上的GridView还是老样子,要刷新页面才能显示新数据,怎么搞?

解决方案 »

  1.   

    你都三个三角了.问这种问题实在不应该
    数据层完全就应该剥离出来!cmd.ExecuteNonQuery();会返回一个int 值.判断一下.然后在重新绑定一下就行了
      

  2.   

    你看一下
    RowDeleting中的
    BindGridView();//重新绑定与page_load 中的有什么差别
      

  3.   

    BindGridView();//重新绑定 应该已经重新绑定了啊
      

  4.   

        protected void gvRecord_RowDeleting(object sender, GridViewDeleteEventArgs e)
        {
            string id = gvRecord.DataKeys[e.RowIndex].Value.ToString();
            string sql = "delete from 晚归与考勤表 where 晚归与考勤ID=" + id;
            SqlConnection conn = Conncetion.getConn();
            SqlCommand cmd = new SqlCommand(sql,conn);
            conn.Open();
            cmd.ExecuteNonQuery();
            Response.Redirect(Request.Url.ToString());//刷新页面
        }
    换成我这个试下··