datalist和repeater一样,都是根据自己的需要添加自己的模板
前台代码如下:
<form id= "form1" runat= "server" > |
<asp:DataList ID= "DataList1" runat= "server" DataKeyField= "ID" RepeatDirection= "Horizontal" > |
<div style= "text-align: left; background-color: #99ffcc;" > |
ID:<asp:Label ID= "IDLabel" runat= "server" Text= '<%# Eval("ID") %>' ></asp:Label><br /> |
Name:<asp:Label ID= "Pro_NameLabel" runat= "server" Text= '<%# Eval("Name") %>' ></asp:Label><br /> |
Price:<asp:Label ID= "Pro_PriceLabel" runat= "server" Text= '<%# Eval("Price") %>' ></asp:Label><br /> |
Introduce:<asp:Label ID= "Pro_IntroduceLabel" runat= "server" Text= '<%# Eval("Introduce") %>' ></asp:Label><br /> |
当前页:<asp:Label ID= "lblCurrent" runat= "server" Text= "1" ></asp:Label> |
总页数:<asp:Label ID= "lblTotal" runat= "server" Text= "Label" ></asp:Label> |
<asp:LinkButton ID= "lbtnFirst" runat= "server" OnClick= "lbtnFirst_Click" >第一页</asp:LinkButton> |
<asp:LinkButton ID= "lbntUp" runat= "server" OnClick= "lbntUp_Click" >上一页</asp:LinkButton> |
<asp:LinkButton ID= "lbtnDown" runat= "server" OnClick= "lbtnDown_Click" >下一页</asp:LinkButton> |
<asp:LinkButton ID= "lbtnLast" runat= "server" OnClick= "lbtnLast_Click" >最后一页</asp:LinkButton> |
后台代码如下:
protected void Page_Load( object sender, EventArgs e) |
private void DataListBind() |
int current_page = Convert.ToInt32(lblCurrent.Text); |
SqlConnection con = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings[ "ConnectionString" ].ConnectionString); |
SqlDataAdapter oda = new SqlDataAdapter( "select * from June_Pro" , con); |
DataSet ds = new DataSet(); |
PagedDataSource ps = new PagedDataSource(); |
ps.DataSource = ds.Tables[0].DefaultView; |
lblTotal.Text = ps.PageCount.ToString(); |
ps.CurrentPageIndex = current_page - 1; |
lbtnFirst.Enabled = true ; |
lbtnFirst.Enabled = false ; |
if (current_page == Convert.ToInt32(lblTotal.Text)) |
lbtnLast.Enabled = false ; |
lbtnDown.Enabled = false ; |
DataList1.DataSource = ps; |
protected void lbtnFirst_Click( object sender, EventArgs e) |
protected void lbtnDown_Click( object sender, EventArgs e) |
lblCurrent.Text = (Convert.ToInt32(lblCurrent.Text) + 1).ToString(); |
protected void lbntUp_Click( object sender, EventArgs e) |
lblCurrent.Text = (Convert.ToInt32(lblCurrent.Text) - 1).ToString(); |
protected void lbtnLast_Click( object sender, EventArgs e) |
lblCurrent.Text = lblTotal.Text; |
运行结果如下: