Gridview 分页,OnPageIndexChanging事件

Gridview 分页,OnPageIndexChanging事件

1. 默认分页方式
(1) 是否允许分页
GridView的AllowPaging属性。

(2) 每页记录数
GridView的PageSize

(3) 分页导航条形式
GridView的PagerSettings属性的Mode:Numeric,NextPrevious,NextPreviousFirstLast,NumericFirstLast。

aspx:

cs:
protected void gv_OnPageIndexChanging(object sender, GridViewPageEventArgs e)
{
    this.gv.PageIndex = e.NewPageIndex;
    this.gvbind(); //重新绑定GridView数据的函数
}

2. 自定义分页
(1) 当前页 总页数 首页、上一页、下一页、尾页  跳转到[ ]页
 
-- [当前第  Text="<%# ((GridView)Container.NamingContainer).PageIndex + 1 %>"> 页] --

 [总  Text="<%# ((GridView)Container.NamingContainer).PageCount %>"> 页] --

 Visible="<%# ((GridView)Container.NamingContainer).PageIndex != 0 %>">首页

 Visible="<%# ((GridView)Container.NamingContainer).PageIndex != 0 %>">上一页

 Visible="<%# ((GridView)Container.NamingContainer).PageIndex != ((GridView)Container.NamingContainer).PageCount - 1 %>">下一页

 Visible="<%# ((GridView)Container.NamingContainer).PageIndex != ((GridView)Container.NamingContainer).PageCount - 1 %>">尾页


          protected void gv_OnPageIndexChanging(object sender, GridViewPageEventArgs e)
 {
        GridView theGrid = sender as GridView;
        int newPageIndex = 0;
        if (-2 == e.NewPageIndex)
        {
            TextBox txtNewPageIndex = null;
            GridViewRow pagerRow = theGrid.BottomPagerRow;
            if (null != pagerRow)
            {
                txtNewPageIndex = pagerRow.FindControl("txtNewPageIndex") as TextBox;  
            }
            if (null != txtNewPageIndex)
            {
                newPageIndex = int.Parse(txtNewPageIndex.Text) - 1; // get the NewPageIndex
            }
        }
        else
        { newPageIndex = e.NewPageIndex;}
        newPageIndex = newPageIndex < 0 ? 0 : newPageIndex;
        newPageIndex = newPageIndex >= theGrid.PageCount ? theGrid.PageCount - 1 : newPageIndex;
        theGrid.PageIndex = newPageIndex;
}

你可能感兴趣的:(java)