GridView 自定义分页

来源:互联网 发布:淘宝卖麻将软件是真假 编辑:程序博客网 时间:2024/04/28 20:57

//前台GridView1控件定义
OnPageIndexChanging="GridView1_PageChanging",OnRowCreated="GridView1_RowCreated",AllowPaging="true", PageSize="10"
//后台代码
     protected void GridView1_RowCreated(object sender, GridViewRowEventArgs e)
        {
            int PageSize = this.gd1.PageSize;
            int PageIndex = this.gd1.PageIndex;
            int PageCount = this.gd1.PageCount;
            int RecoderCount = this.gd1.Rows.Count;

            if (e.Row.RowType == DataControlRowType.Pager)
            {
                LinkButton Frist = new LinkButton();
                LinkButton Prev = new LinkButton();
                LinkButton Next = new LinkButton();
                LinkButton Last = new LinkButton();
                e.Row.Controls.Clear();
                TableCell tc = new TableCell();
                tc.ColumnSpan = 4;                          //根据GridView表格列数不同而修改
                tc.Controls.Add(new LiteralControl("  "));
                tc.Controls.Add(new LiteralControl("共" + RecoderCount.ToString() + "条记录"));
                tc.Controls.Add(new LiteralControl("  "));
                tc.Controls.Add(new LiteralControl("共" + PageCount.ToString() + "页"));
                tc.Controls.Add(new LiteralControl("  "));
                tc.Controls.Add(new LiteralControl("当前第" + (PageIndex + 1).ToString() + "页"));
                tc.Controls.Add(new LiteralControl("  "));
                tc.Controls.Add(new LiteralControl("每页" + PageSize.ToString() + "条记录"));
                tc.Controls.Add(new LiteralControl("    "));

                Frist.Text = "首页";
                Frist.CommandName = "Page";
                Frist.CommandArgument = "First";
                Frist.Font.Underline = false;

                Prev.Text = "上一页";
                Prev.CommandName = "Page";
                Prev.CommandArgument = "Prev";
                Prev.Font.Underline = false;

                Next.Text = "下一页";
                Next.CommandName = "Page";
                Next.CommandArgument = "Next";
                Next.Font.Underline = false;

                Last.Text = "尾页";
                Last.CommandName = "Page";
                Last.CommandArgument = "Last";
                Last.Font.Underline = false;

                if (PageIndex <= 0)
                {
                    Prev.Enabled = false;
                    Frist.Enabled = false;
                }
                else
                {
                    Prev.Enabled = true;
                    Frist.Enabled = true;
                }
                tc.Controls.Add(Frist);
                tc.Controls.Add(new LiteralControl("&nbsp;&nbsp;"));
                tc.Controls.Add(Prev);
                tc.Controls.Add(new LiteralControl("&nbsp;&nbsp;"));

                for (int i = 0; i < PageCount; i++)
                {
                    if (i == PageIndex)
                    {
                        tc.Controls.Add(new LiteralControl(" <span style='color:red;font-weight:bold'>" + (i + 1).ToString() + " </span>"));

                    }
                    else
                    {
                        LinkButton lbBtn = new LinkButton();
                        lbBtn.Text = (i + 1).ToString();
                        lbBtn.CommandName = "Page";
                        lbBtn.CommandArgument = (i + 1).ToString();
                        lbBtn.Font.Underline = false;
                        tc.Controls.Add(lbBtn);
                    }
                    tc.Controls.Add(new LiteralControl("&nbsp;&nbsp;"));
                }
                if (PageIndex >= PageCount)
                {
                    Next.Enabled = false;
                    Last.Enabled = false;
                }
                else
                {
                    Next.Enabled = true;
                    Last.Enabled = true;
                }
                tc.Controls.Add(Next);
                tc.Controls.Add(new LiteralControl("&nbsp;&nbsp;"));
                tc.Controls.Add(Last);
                tc.Controls.Add(new LiteralControl("&nbsp;&nbsp;"));

                e.Row.Controls.Add(tc);
            }
        }
        protected void GridView1_PageChanging(object sender, GridViewPageEventArgs e)
        {
            gd1.PageIndex = e.NewPageIndex;
            DataBind();
        }

原创粉丝点击