zoukankan      html  css  js  c++  java
  • DataList的使用+分页

    datalist和repeater一样,都是根据自己的需要添加自己的模板,简单例子如下:

    前台代码如下:

    <body>
        <form id="form1" runat="server">
        <div>
            <asp:DataList ID="DataList1" runat="server" DataKeyField="ID"  RepeatDirection="Horizontal">
                <ItemTemplate>
                    <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 />
                    </div>                           
                </ItemTemplate>
            </asp:DataList>
            当前页:<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>
        </div>
        </form>
    </body>
    

    后台代码如下:

        protected void Page_Load(object sender, EventArgs e)
        {
            DataListBind();
        }
    
        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();
            oda.Fill(ds);
    
            PagedDataSource ps = new PagedDataSource();
            ps.DataSource = ds.Tables[0].DefaultView;
            ps.AllowPaging = true;
            ps.PageSize = 4;
            lblTotal.Text = ps.PageCount.ToString();
            ps.CurrentPageIndex = current_page - 1;
            lbtnFirst.Enabled = true;
            lbntUp.Enabled = true;
            lbtnDown.Enabled = true;
            lbtnLast.Enabled = true;
            if (current_page == 1)
            {
                lbtnFirst.Enabled = false;
                lbntUp.Enabled = false;
            }
            if (current_page == Convert.ToInt32(lblTotal.Text))
            {
                lbtnLast.Enabled = false;
                lbtnDown.Enabled = false;
            }
            DataList1.DataSource = ps;
            DataList1.DataBind();
        }
        protected void lbtnFirst_Click(object sender, EventArgs e)
        {
            lblCurrent.Text = "1";
            DataListBind();
        }
        protected void lbtnDown_Click(object sender, EventArgs e)
        {
            lblCurrent.Text = (Convert.ToInt32(lblCurrent.Text) + 1).ToString();
            DataListBind();
        }
        protected void lbntUp_Click(object sender, EventArgs e)
        {
            lblCurrent.Text = (Convert.ToInt32(lblCurrent.Text) - 1).ToString();
            DataListBind();
        }
        protected void lbtnLast_Click(object sender, EventArgs e)
        {
            lblCurrent.Text = lblTotal.Text;
            DataListBind();
        }
    

    运行结果如下图:

  • 相关阅读:
    金蝶数据库执行语句
    金蝶 更新价格分录表触发器
    金蝶触发器,生成条码信息
    SQL从中文中获取拼音首字母
    C语言 typedef用法
    这姑娘漂亮不,说实话,有糖吃
    条码开发的意义在哪里
    ERP开发,重点不在功能
    金蝶出入库数据库表里加字段后出现的问题解决
    解决金蝶未检测到K/3许可文件,并且该账套已超过演示版期限问题
  • 原文地址:https://www.cnblogs.com/JuneZhang/p/1997005.html
Copyright © 2011-2022 走看看