datalist 分页

本文介绍了一个使用ASP.NET和SQL Server实现数据分页显示的例子。通过SqlCommand从数据库中查询数据,并利用PagedDataSource进行分页处理,最终将数据绑定到DataList控件上展示。

using System;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.SqlClient;
public partial class _Default : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            this.binddatalist();
        }
    }
    public void binddatalist()
    {
        SqlCommand cmd = new SqlCommand("select * from marks", this.getConnection());
        SqlDataAdapter da = new SqlDataAdapter(cmd);
        DataSet ds = new DataSet();
        da.Fill(ds);


        PagedDataSource pds = new PagedDataSource();
        pds.DataSource = ds.Tables[0].DefaultView;
        pds.AllowPaging = true;
        pds.PageSize = 5;

        int currentpage;
        if (Request.QueryString["page"] != null)
        {
            currentpage = Convert.ToInt32(Request.QueryString["page"]);
        }
        else
        {
            currentpage = 1;
        }

        pds.CurrentPageIndex = currentpage - 1;
        this.lblcurrent.Text = currentpage.ToString();
        if (pds.IsFirstPage)
        {
            hllast.Visible = false;
        }
        else
        {
            hllast.Visible = true;
        }
        if (pds.IsLastPage)
        {
            hlnext.Visible = false;
        }
        else
        {
            hlnext.Visible = true;
        }
        hllast.NavigateUrl = "Default.aspx?page=" + (currentpage - 1);
        hlnext.NavigateUrl = "Default.aspx?page=" + (currentpage + 1);
        this.DataList1.DataSource = pds;
        this.DataList1.DataBind();


    }
    public SqlConnection getConnection()
    {
        SqlConnection con = new SqlConnection(@"server=.\SQLEXPRESS;uid=sa;pwd=123456;database=test");
        con.Open();
        return con;
    }
}

转载于:https://www.cnblogs.com/snow365/archive/2008/07/05/1236163.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值