asp.net datalist 分页显示代码

本文介绍了一个使用ASP.NET和OleDb实现的简单新闻列表分页功能。通过DataList控件展示从数据库中获取的新闻标题、发布日期等信息,并实现了基本的翻页功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前台.aspx:

<asp:DataList ID="DataList4" runat="server" Width="548px">
                                                                <ItemTemplate>
                                                                    <div style="text-align: center">
                                                                        <table border="0" cellpadding="0" cellspacing="0" style="width: 100%">
                                                                            <tr>
                                                                                <td style="width: 40px" align="center">
                                                                                    <asp:Image ID="Image8" runat="server" ImageUrl="~/Images/20.jpg" /></td>
                                                                                <td style="width: 400px" align="left">
                                                                                <a href="viewnews.aspx?id=<%#Eval("id") %>">
                                                                                    <asp:Label ID="Label4" runat="server" Text='<%# Eval("title") %>'></asp:Label>
                                                                                    </a>
                                                                                    </td>
                                                                                <td style="width: 148px">
                                                                                    [<asp:Label ID="Label5" runat="server" Text='<%# Eval("pub_date") %>'></asp:Label>]</td>
                                                                            </tr>
                                                                        </table>
                                                                    </div>
                                                                </ItemTemplate>
                                                            </asp:DataList></td>
                                                    </tr>
                                                     <tr><td style="height:50px" valign="middle" align="center">
                                <asp:Label ID="Label9" runat="server" Text="当前页码为:"></asp:Label>[
                                <asp:Label ID="labPage" runat="server" Text="1"></asp:Label>
                                ]
                                <asp:Label ID="Label8" runat="server" Text="总页码为:"></asp:Label>
                                [
                                <asp:Label ID="labBackPage" runat="server"></asp:Label>
                                ]<asp:LinkButton ID="lnkbtnOne" runat="server" Font-Underline="False" ForeColor="Red" OnClick="lnkbtnOne_Click"
                                    >第一页</asp:LinkButton>
                                <asp:LinkButton ID="lnkbtnUp" runat="server" Font-Underline="False" ForeColor="Red" OnClick="lnkbtnUp_Click"
                                    >上一页</asp:LinkButton>
                                <asp:LinkButton ID="lnkbtnNext" runat="server" Font-Underline="False" ForeColor="Red" OnClick="lnkbtnNext_Click"
                                    >下一页</asp:LinkButton>
                                <asp:LinkButton ID="lnkbtnBack" runat="server" Font-Underline="False" ForeColor="Red" OnClick="lnkbtnBack_Click"
                                    >最后一页</asp:LinkButton>   

后台.aspx.cs代码:

public void list4()//公司新闻
    {
        OleDbConnection conn = ConnectionDB.getCon();
        OleDbCommand cmd = new OleDbCommand("select  id,title,pub_date from product where pro_name='news' order by id desc ", conn);
        OleDbDataAdapter dsa = new OleDbDataAdapter(cmd);
        DataSet ta = new DataSet();
        dsa.Fill(ta);
        int cutPage = Convert.ToInt32(labPage.Text);//当前显示页页
        PagedDataSource ps = new PagedDataSource();//page数据源
        ps.DataSource = ta.Tables[0].DefaultView;//page数据源的绑定
        ps.AllowPaging = true;//设为能分页
        ps.PageSize = 20;//每页显示的记录数
        ps.CurrentPageIndex = cutPage - 1;//获取当页面
        lnkbtnUp.Enabled = true;
        lnkbtnNext.Enabled = true;
        lnkbtnBack.Enabled = true;
        lnkbtnOne.Enabled = true;

        if (cutPage == 1)
        {
            lnkbtnOne.Enabled = false;//不显示第一页
            lnkbtnUp.Enabled = false;//不显示上一页
        }
        if (cutPage == ps.PageCount)
        {
            lnkbtnNext.Enabled = false;//不显示下一页
            lnkbtnBack.Enabled = false;//不显示最后一页
        }
        labBackPage.Text = Convert.ToString(Convert.ToInt32(ps.PageCount));//总页码数
        DataList4.DataSource = ps;
        DataList4.DataBind();
    }
    protected void lnkbtnOne_Click(object sender, EventArgs e)
    {
        labPage.Text = "1";
        list4();
    }
    protected void lnkbtnUp_Click(object sender, EventArgs e)
    {
        labPage.Text = Convert.ToString(Convert.ToInt32(labPage.Text) - 1);
        list4();
    }
    protected void lnkbtnNext_Click(object sender, EventArgs e)
    {
        labPage.Text = Convert.ToString(Convert.ToInt32(labPage.Text) + 1);
        list4();
    }
    protected void lnkbtnBack_Click(object sender, EventArgs e)
    {
        labPage.Text = labBackPage.Text;
        list4();
    }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值