+++ 前台代码
<table>
<asp:Repeater ID="Repeater1" runat="server">
<ItemTemplate>
<tr>
<%--前台也可以调用后台的自定义函数--%>
<td><a href=""><%# DataBinder.Eval(Container.DataItem,"[EMPNO]")%></a></td>
<td><a href=""><%# DataBinder.Eval(Container.DataItem,"[ENAME]")%></a></td>
</tr>
</ItemTemplate>
</asp:Repeater>
</table>
<table border="1">
<tr>
<td>
<asp:LinkButton ID="lbtnFirstPage" runat="server" OnClick="lbtnFirstPage_Click">页首</asp:LinkButton>
<asp:LinkButton ID="lbtnpritPage" runat="server" OnClick="lbtnpritPage_Click">上一页</asp:LinkButton>
<asp:LinkButton ID="lbtnNextPage" runat="server" OnClick="lbtnNextPage_Click">下一页</asp:LinkButton>
<asp:LinkButton ID="lbtnDownPage" runat="server" OnClick="lbtnDownPage_Click">页尾</asp:LinkButton>
第<asp:Label ID="labPage" runat="server" Text="Label"></asp:Label>页/共<asp:Label ID="LabCountPage" runat="server" Text="Label"></asp:Label>页
跳至<asp:DropDownList ID="DropDownList1" runat="server"> </asp:DropDownList>
</td>
</tr>
</table>
+++ 后台代码
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
this.labPage.Text = "1";
this.contrlRepeater();
}
}
public void contrlRepeater()
{
OracleConnection conn = new OracleConnection("Data Source=ora9; User ID=scott; Password=tiger; Unicode=True");
DataSet ds = new DataSet();
OracleDataAdapter daEMP = new OracleDataAdapter("SELECT * FROM EMP", conn);
daEMP.Fill(ds, "EMP");
PagedDataSource pds = new PagedDataSource();
pds.DataSource = ds.Tables["EMP"].DefaultView;
pds.AllowPaging = true;
pds.PageSize = 10;
pds.CurrentPageIndex = Convert.ToInt32(this.labPage.Text) - 1;
Repeater1.DataSource = pds;
LabCountPage.Text = pds.PageCount.ToString();
labPage.Text = (pds.CurrentPageIndex + 1).ToString();
this.lbtnpritPage.Enabled = true;
this.lbtnFirstPage.Enabled = true;
this.lbtnNextPage.Enabled = true;
this.lbtnDownPage.Enabled = true;
if (pds.CurrentPageIndex < 1)
{
this.lbtnpritPage.Enabled = false;
this.lbtnFirstPage.Enabled = false;
}
if (pds.CurrentPageIndex == pds.PageCount - 1)
{
this.lbtnNextPage.Enabled = false;
this.lbtnDownPage.Enabled = false;
}
Repeater1.DataBind();
}
protected void lbtnpritPage_Click(object sender, EventArgs e)
{
this.labPage.Text = Convert.ToString(Convert.ToInt32(labPage.Text) - 1);
this.contrlRepeater();
}
protected void lbtnFirstPage_Click(object sender, EventArgs e)
{
this.labPage.Text = "1";
this.contrlRepeater();
}
protected void lbtnDownPage_Click(object sender, EventArgs e)
{
this.labPage.Text = this.LabCountPage.Text;
this.contrlRepeater();
}
protected void lbtnNextPage_Click(object sender, EventArgs e)
{
this.labPage.Text = Convert.ToString(Convert.ToInt32(labPage.Text) + 1);
this.contrlRepeater();
}