1.net框架的話是 Framework 4.0
2.项目类型是一个报表查询的Web页面,架构是标准的三层架构
3.数据库链接的话用了SqlHelper助手类,ps:这个网上可以搜到很多,随便搞一个
一.先在网上下载一个AspNetPager的组件包,地址:http://www.webdiyer.com/aspnetpager/,下载下来之后在路径AspNetPagerCN-7.5.1\Demo\Bin下有一个AspNetPager.dll,把这个dll文件引用到项目中,再在后台引用一个命名空间,using Wuqi.Webdiyer;这样引用就完成了
二.前台页面
ASP.NET控件那一栏,拉倒最下面,右键第三个选项添加AspNetPager控件,添加完成后,先拉取gridview控件,再在gridview控件下面拉一个AspNetPager控件,设置AspNetPager控件的样式,前台代码如下:
<asp:GridView ID="GridView1" runat="server" Height="300px" Width="548px" CellPadding="0"
ForeColor="#333333"
onpageindexchanged="GridView1_PageIndexChanged" CaptionAlign="Right"
HorizontalAlign="Center" CssClass="gridView_th">
<AlternatingRowStyle BackColor="White"/>
<EditRowStyle BackColor="red" />
<FooterStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
<HeaderStyle BackColor="#507CD1" Font-Bold="True"
ForeColor="White" HorizontalAlign="Center"/>
<PagerStyle BackColor="#2461BF" ForeColor="White"/>
<RowStyle BackColor="#EFF3FB" HorizontalAlign="Center" />
<SelectedRowStyle BackColor="#D1DDF1" Font-Bold="True" ForeColor="#333333" />
<SortedAscendingCellStyle BackColor="#F5F7FB" />
<SortedAscendingHeaderStyle BackColor="#6D95E1" />
<SortedDescendingCellStyle BackColor="#E9EBEF" />
<SortedDescendingHeaderStyle BackColor="#4870BE" />
</asp:GridView>
<webdiyer:AspNetPager ID="AspNetPager1" runat="server" CssClass="anpager"
CurrentPageButtonClass="cpb" FirstPageText="首页" LastPageText="尾页"
NextPageText="下一页" PrevPageText="上一页" SubmitButtonText="Go"
TextAfterPageIndexBox="页" TextBeforePageIndexBox="转到">
</webdiyer:AspNetPager>
样式代码:
CSS样式
.anpager
{
font: 11px Arial, Helvetica, sans-serif;
padding:10px 20px 10px 0;
margin: 0px;
}
.anpager a
{
padding: 1px 6px;
border: solid 1px #ddd;
background: #fff;
text-decoration: none;
margin-right:2px
}
.anpager a:visited
{
padding: 1px 6px;
border: solid 1px #ddd;
background: #fff;
text-decoration: none;
}
.anpager .cpb
{
padding: 1px 6px;
font-weight: bold;
font-size: 13px;
border:none
}
.anpager a:hover
{
color: #fff;
background: #ffa501;
border-color:#ffa501;
text-decoration: none;
}
/* AspNetPager1属性设置: CssClass="anpager" CurrentPageButtonClass="cpb"*/
三.后台代码
数据绑定核心代码:
分页查询的核心是一次查询一部分数据,因此查询语句要选择查询前多少条数据,然后再查询总条数并返回,根据当前页数进行数据查询
DataTable DT = (DataTable)Session["dsData"];
PagedDataSource pds = new PagedDataSource();
//设置总行数
AspNetPager1.RecordCount = (int)Count;
//设置分页的数据源
pds.DataSource = DT.DefaultView;
//设置当前页
pds.CurrentPageIndex = AspNetPager1.CurrentPageIndex - 1;
//设置每页显示页数
pds.PageSize = AspNetPager1.PageSize;
//启用分页
pds.AllowPaging = true;
页面加载事件代码:
protected void Page_Load(object sender, EventArgs e)
{
this.AspNetPager1.PageSize = 30;
if (!IsPostBack)
{
BindGridview();
}
}
AspNetPager的PageChanged事件中添加如下代码
protected void AspNetPager1_PageChanged(object sender, EventArgs e)
{
BindGridview();
}
效果图:
这样一个基于AspNetPager+GridView真分页就实现了