且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

GridView批量删除页面最后N条数据时自动翻到上一页问题

更新时间:2022-10-02 13:53:18

删除选中数据
protected void lbtnDelSeleted_Click(object sender, EventArgs e)

{
    CQ_Music myMusic=new CQ_Music();//这里是一个对音乐操作的类
    for (int i = 0; i < gvMusic.Rows.Count; i++)
    {
        if (((CheckBox)gvMusic.Rows[i].Cells[0].FindControl("chbItem")).Checked)
        {

            int id = Convert.ToInt32(((Label)gvMusic.Rows[i].Cells[0].FindControl("lbID")).Text);
            myMusic.delete(id);//这里调用类的操作方法
        }
    }
   
     //这里用了二次绑定,因为多选删除问题,无法用取余=1的旧方法,
     //两个条件判断,是不是第一页(索引为0),当前页数据为0条(在当前页数据被删除完后,更新后,显示为0条)
   int currentPageIndex = gvMusic.PageIndex;//获取当前页的索引,因为第一次绑定后,索引可能会减1
    gvMusic.DataBind();
    //如果最后一页的数据被删除后,
    if (currentPageIndex != 0 && gvMusic.Rows.Count == 0)
    {
        gvMusic.PageIndex = currentPageIndex - 1;
    }
    gvMusic.DataBind();

}

版权声明:本文原创发表于博客园,作者为路过秋天,原文链接:http://www.cnblogs.com/cyq1162/archive/2006/11/20/566504.html