天天看点

我学ASP.Net---新手(分页显示)

1、首先在设计界面添加–GridView控件,ID属性命名为–gvClient,添加4个–HyperLink (ID分别设置为 hlFirst(首页) ,hlPrev(上一页), hlNext(下一页),hlLast(尾页)和一个 Label (ID 属性设为lblPage)

2、在空白处双击进入代码编辑页面–>在Page_Load中添加代码

3、代%Erl =%2����5";�^|�E�{P�20

//初始化当前页和总页数

int CurrPage=0;

int TotalPage=0;

//数据库中的表放到DataTable中(DataTable使用方法(转载 http://blog.csdn.net/hcw_peter/article/details/3980723))

string ClientSql=”select * from Client_info”;

DataTable DtClient=DataAccess.GetDataTable(ClientSql);

//进入正题 —分页设置

//其中 PagedDataSource 类封装了GridView控件的属性,这些属性才能是Gridvew执行分页

//部分公共属性如下:

//AllowCustomPaging 获取或设置指示是否启用自定义分页的值

//AllowPaging 获取或设置指示是否启用分页的值

//Count 获取要从数据源使用的项数

CurrentPageIndex 获取或设置当前页的索引

DataSource 获取或设置当前页的索引

DataSourceCount 获取 获取数据源中的项数。

FirstIndexInPage 获取页中的第一个索引。

IsCustomPagingEnabled 获取一个值,该值指示是否启用自定义分页。

IsFirstPage 获取一个值,该值指示当前页是否是首页。

IsLastPage 获取一个值,该值指示当前页是否是最后一页。

IsPagingEnabled 获取一个值,该值指示是否启用分页。

IsReadOnly 获取一个值,该值指示数 else �7�8";�^|�E�{<�7��。

IsSynchronized 获取一个值,该值指示是否同步对数据源的访问(线程安全)。

PageCount 获取显示数据源中的所有项所需要的总页数。

PageSize 获取或设置要在单页上显示的项数。

VirtualCount 获取或设置在使用自定义分页时数据源中的实际项数。

PagedDataSource PdsPage= new PagedDataSource();

PdsPage.DataSource=DtClient.DefaultView;

//设置分页的值

pdsPage.AllowPaging=true;

PdsPage.PageSize=2;

//判断地址是否传递了页码参数

if(Request.QueryStrig[“page’]!=null)

if (Request.QueryString[“page”] != null)

{

CurrPage = Convert.ToInt16(Request.QueryString[“page”]);

}
        else
            CurrPage = 1;
        TotalPage = pdsPage.PageCount;
        pdsPage.CurrentPageIndex = CurrPage - 1;
        //填充gvClient
        gvClient.DataSource = pdsPage;
        gvClient.DataBind();
        //显示分页状态信息
        lblPage.Text = "第" + CurrPage.ToString() + "页/共" +Convert.ToString(TotalPage);
        //首页
        hlFirst.NavigateUrl = Request.CurrentExecutionFilePath + "?page=1";
    //上一页
        if (!pdsPage.IsFirstPage)
        {
            hlPrev.NavigateUrl = Request.CurrentExecutionFilePath + "?page=" + Convert.ToString((CurrPage-1));
        }
        //下一页
        if (!pdsPage.IsLastPage)
            hlNext.NavigateUrl = Request.CurrentExecutionFilePath + "?Page=" +  Convert.ToString((CurrPage+1));
        //尾页
        hlLast.NavigateUrl = Request.CurrentExecutionFilePath + "?page=" + Convert.ToString((CurrPage+1));