您的位置:首页 > 编程语言 > ASP

ASP.NET Repeater以及分页控件AspNetPager

2017-12-05 14:52 726 查看
1.分页需要一个插件:AspNetPager.dll

2.需要一个PagedDataSource对象,设置分页属性。

前台WebForm1.aspx:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="UI.WebForm1" %>

<%@ Register Assembly="AspNetPager" Namespace="Wuqi.Webdiyer" TagPrefix="webdiyer" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Repeater runat="server" ID="repeater">
<HeaderTemplate>
<table>
<tr>
<td>书籍名称</td>
<td>价格</td>
</tr>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td>
<a href="showDetail.aspx?ID=<%# Eval("id") %>"><%# Eval("title") %></a>
</td>
<td>
<%# Eval("price") %>
</td>
</tr>

</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>

</div>
<div>
<webdiyer:AspNetPager ID="AspNetPager1" runat="server" BorderStyle="None" FirstPageText="首页" LastPageText="尾页" NextPageText="下一页" OnPageChanged="AspNetPager1_PageChanged" PageSize="4" PrevPageText="上一页"></webdiyer:AspNetPager>
</div>
</form>
</body>
</html>


后台WebForm1.aspx.cs:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

using BLL;
using Model;
using System.Data;
namespace UI
{
public partial class WebForm1 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
//第一次加载也调用这个函数
AspNetPager1_PageChanged(sender, e);
}
}
public void aspnetpager()
{
DataTable dt = UserBLL.selectAllbooks();
//设置数量为DataTable的行数
AspNetPager1.RecordCount = dt.Rows.Count;
//分页数据源对象
PagedDataSource pds = new PagedDataSource();
//分页设置为true
pds.AllowPaging = true;
//设置每一页的大小 (ASPNetPager1.PageSize在控件属性里面设置)
pds.PageSize = this.AspNetPager1.PageSize;
//当前页面索引是 aspnetpager控件页面索引-1,因为后者的CurrentPageIndex是1开始
pds.CurrentPageIndex = this.AspNetPager1.CurrentPageIndex - 1;
//设置PageDataSource的数据源(DataView)
pds.DataSource = dt.DefaultView;
//设置Repeater的数据源(是PageDataSource)
repeater.DataSource = pds;
//绑定数据
repeater.DataBind();
}

protected void AspNetPager1_PageChanged(object sender, EventArgs e)
{
//当页面发生改变时,调用这个函数
aspnetpager();
}
}
}

UserBLL
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

using System.Data;
using DAL;
using Model;
namespace BLL
{
public class UserBLL
{
public static DataTable selectAllbooks()
{
return UserServer.selectAllBooks().Tables[0];
}
public static int addBook(bookinfo bi)
{
return Convert.ToInt32(UserServer.addBook(bi));
}
///根据id查找book
public static bookinfo selectbook(int id)
{
DataTable dt= UserServer.selectBook(id).Tables[0];
bookinfo bi = new bookinfo();
bi.Id = id;
bi.Title = dt.Rows[0][0].ToString();
bi.Decsript= dt.Rows[0][1].ToString();
bi.Booktype = dt.Rows[0][2].ToString();
return bi;
// bi.Price = dt.Rows[0][3]
}
//更新书籍信息
public static int updateBook(bookinfo bi)
{
return Convert.ToInt32(DAL.UserServer.updateBook(bi));
}
//删除书籍
public static int deleteByid(int id)
{
return Convert.ToInt32(DAL.UserServer.deleteByid(id));
}
}
}
UserServer
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data;
using Model;
namespace DAL
{
public class UserServer
{
public static DataSet selectAllBooks()
{
string sql = " select * from bookinfo order by id desc";
return SQLHELPER.ExecuteDataSet(sql);
}
public static object addBook(bookinfo bi)
{
return SQLHELPER.ExecuteNonQuery(" insert into bookinfo (title,descript,booktype,price)values('" + bi.Title + "','" + bi.Decsript + "','" + bi.Booktype + "',' "+ bi.Price+"')");
}
//根据id查找book
public static DataSet selectBook(int id)
{
return SQLHELPER.ExecuteDataSet(" select [title],[descript],[booktype],[price] from bookinfo where id='" + id + "'");

}
//更新书籍信息
public static object updateBook(bookinfo bi)
{
return SQLHELPER.ExecuteNonQuery(" update bookinfo set title='" + bi.Title + "',descript='" + bi.Decsript + "',booktype='" + bi.Booktype+ "',price='" + bi.Price+"' where id='" + bi.Id+"'");
}
//删除书籍
public static object deleteByid(int id)
{
return SQLHELPER.ExecuteNonQuery(" delete from bookinfo where id='" + id + "'");
}
}
}




内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: