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

ASP.NET Repeater绑定数据并实现分页

2009-10-13 14:29 776 查看
显示当前页码
Label
属性 值
ID LabNowPageNumber
text 1
×××××××××××××××××××××××××××××××××××××××××××
显示总页码
Label
属性 值
ID LabAllPageNumber
text ""
×××××××××××××××××××××××××××××××××××××××××××××××
LinkButton
属性 值
ID LnkBtnOne
text 第一页
××××××××××××××××××××××××××××××××××××××××××××××
LinkButton
属性 值
ID LnkBtnUp
text 上一页
××××××××××××××××××××××××××××××××××××××××××××××
LinkButton
属性 值
ID LnkBtnNext
text 下一页
×××××××××××××××××××××××××××××××××××××××××××××
LinkButton
属性 值
ID LnkBtnBack
text 最后一页
*****************************************************************************
*****************************************************************************
<asp:Repeater ID="Repeater1" runat="server">
<ItemTemplate>
<table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><%# Eval("NBID") %></td>
<td><%# Eval("ADID") %></td>
<td><%# Eval("NBName") %></td>
<td><%# Eval("NBAdr") %></td>
<td><%# Eval("NBTel") %></td>
<td><%# Eval("NBNumber") %></td>
<td><%# Eval("NBYears") %></td>
<td><%# Eval("UserName") %></td>
<td><%# Eval("Password") %></td>
<td></td>
<td></td>
</tr>
</table>
</ItemTemplate>
</asp:Repeater>

</div>
<br />
当前页码:<asp:Label ID="LabNowPageNumber" runat="server">1</asp:Label>
总页码:<asp:Label ID="LabAllPageNumber" runat="server"></asp:Label>
<asp:LinkButton ID="LnkBtnOne" runat="server" OnClick="LnkBtnOne_Click">第一页</asp:LinkButton>
<asp:LinkButton ID="LnkBtnUp" runat="server" OnClick="LnkBtnUp_Click">上一页</asp:LinkButton>
<asp:LinkButton ID="LnkBtnNext" runat="server" OnClick="LnkBtnNext_Click">下一页</asp:LinkButton>
<asp:LinkButton ID="LnkBtnBack" runat="server" OnClick="LnkBtnBack_Click">最后一页</asp:LinkButton>
********************************************************************************
********************************************************************************
protected void Page_Load(object sender, EventArgs e)
{
//是否是第一次加载页面
if (!IsPostBack)
{
Pagination();
}
}
/// <summary>
/// 分页
/// </summary>
public void Pagination()
{
NBClass nb = new NBClass();
NBDSet.NB_IntroduceDataTable table = nb.GetNBTable();
PagedDataSource ps = new PagedDataSource();
ps.DataSource = table.DefaultView;
ps.AllowPaging = true;//是否可以分页
ps.PageSize = 2;//显示数量
int curpage=Convert .ToInt32(LabNowPageNumber.Text);//取得当前页的页码
ps.CurrentPageIndex = curpage - 1;
LnkBtnOne.Enabled = true;
LnkBtnUp.Enabled = true;
LnkBtnNext.Enabled = true;
LnkBtnBack.Enabled = true;
if (ps.IsFirstPage)//如果是第一页
{
LnkBtnOne.Enabled = false;//不显示第一页按钮
LnkBtnUp.Enabled = false;//不显示上一页按钮
}
if (ps.IsLastPage)//如果是最后一页
{
LnkBtnNext.Enabled = false;//不显示下一页按钮
LnkBtnBack.Enabled = false;//不显示最后一页按钮
}
LabAllPageNumber.Text = Convert.ToString(ps.PageCount);//获取总页码
Repeater1.DataSource = ps;//给Repeater数据源
Repeater1.DataBind();//绑定数据源
}

//点击第一页按钮
protected void LnkBtnOne_Click(object sender, EventArgs e)
{
LabNowPageNumber.Text = "1";
Pagination();
}
//点击上一页按钮
protected void LnkBtnUp_Click(object sender, EventArgs e)
{
LabNowPageNumber.Text = Convert.ToString(Convert.ToInt32(LabNowPageNumber.Text) - 1);
Pagination();
}
//点击下一页按钮
protected void LnkBtnNext_Click(object sender, EventArgs e)
{
LabNowPageNumber.Text = Convert.ToString(Convert.ToInt32(LabNowPageNumber.Text) + 1);
Pagination();
}
//点击最后一页按钮
protected void LnkBtnBack_Click(object sender, EventArgs e)
{
LabNowPageNumber.Text = LabAllPageNumber.Text;
Pagination();
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: