using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;
using System.Collections.Generic;
public partial class DataLlist : System.Web.UI.Page
{
//static int pagen=0;//当前第 pagen+1 页
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
MyDs();
ViewState["pagen"] = 0;//当前第 pagen+1 页
}
}
private void MyDs()
{
try
{
// int s = pagen * 10;
SqlConnection con = DBGet.Getcon();
//子查询分页 (一)
//string sql = "select top 5 * from books where id not in( select top " + s + " id from books order by id )";
//SqlDataAdapter adapter = new SqlDataAdapter(sql, con);
//DataSet ds = new DataSet();
//adapter.Fill(ds, "books");
//this.dataList.DataSource = ds.Tables[0].DefaultView;
//this.dataList.DataBind();
//pagedataSource 分页
string sql = "select * from books";//所有数据
SqlDataAdapter adapter = new SqlDataAdapter(sql, con);
DataSet ds = new DataSet();
adapter.Fill(ds, "books");
PagedDataSource pgds = new PagedDataSource();//
pgds.DataSource = ds.Tables[0].DefaultView;//数据绑定
pgds.AllowPaging = true;//允许分页
pgds.PageSize = 6;//每页数据量
pgds.CurrentPageIndex = (Convert.ToInt32(ViewState["pagen"]));//设置显示当前第几页
SetEnable(pgds);//是否可点??
this.dataList.DataSource =pgds ;
this.dataList.DataBind();
}
catch (SqlException ex)
{
throw ex;
}
}
private void SetEnable(PagedDataSource pgds)//设置是否可点
{
this.lbtnpre.Enabled = true;
this.lbtnNext.Enabled = true;
if(pgds.IsFirstPage)
{
this.lbtnpre.Enabled = false;
}
if(pgds.IsLastPage)
{
this.lbtnNext.Enabled = false;
}
}
public string GetUrl(Object temp)//图片路径
{
string path = "Images/9787900107954.jpg";
if (temp != null)
{
string imgpath = "Images/" + temp.ToString() + ".jpg";
path = imgpath;
}
return path;
}
public string MySub(object str,int n) //截取字符串
{
string s = null;
if(str!=null )
{
if (str.ToString().Length > n)//检查是否大于指定长度
{
s = str.ToString().Substring(0, n) + "...";
}
else
{
s = str.ToString();
}
}
return s;
}
protected void LinkButton1_Click(object sender, EventArgs e)
{
//上一页
//pagen--;
ViewState["pagen"]= ((int)ViewState["pagen"])-1;//改变页码
MyDs();
}
protected void LinkButton2_Click(object sender, EventArgs e)
{
//下一页
ViewState["pagen"] = ((int)(ViewState["pagen"]))+1;
MyDs();
}
protected void dataList_SelectedIndexChanged(object sender, EventArgs e)
{
}
}
前台///
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="DataLlist.aspx.cs" Inherits="DataLlist" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>无标题页</title>
<style type="text/css">
*{
font-size:12px ;
}
.myDiv{
background-color:yellow ;
}
</style>
</head>
<body style="text-align: center">
<form id="form1" runat="server">
<div style="text-align: center" class="myDiv">
<asp:DataList ID="dataList" runat="server" RepeatColumns="2" RepeatDirection="Horizontal" OnSelectedIndexChanged="dataList_SelectedIndexChanged">
<ItemTemplate>
<table border="0" cellpadding="0" cellspacing="0" width="500">
<tr>
<td colspan="2">
书的列表</td>
</tr>
<tr>
<td align="center" style="width: 200px;" rowspan="4">
<img src='<%# GetUrl(Eval("ISBN")) %>' width="140" alt='<%#Eval("ISBN") %>' /></td>
<td align="left" style="width: 400px; height: 19px">
书名:<%#Eval("Title") %></td>
</tr>
<tr>
<td align="left" style="width:400px; height: 19px">
</td>
</tr>
<tr>
<td align="left" style="width: 400px; height: 19px">
<a href="DataLlist2.aspx?ISBN=<%#Eval("ISBN") %>"> 简介:<%# MySub(Eval("ContentDescription"),200)%></a></td>
</tr>
<tr>
<td align="left" style="width: 400px; height: 19px; text-align: right">
价格:<%# Eval("UnitPrice")%></td>
</tr>
</table>
</ItemTemplate>
</asp:DataList></div>
<asp:LinkButton ID="lbtnpre" runat="server" OnClick="LinkButton1_Click">上一页</asp:LinkButton><asp:LinkButton
ID="lbtnNext" runat="server" OnClick="LinkButton2_Click">下一页</asp:LinkButton>
</form>
</body>
</html>