GridView分页 记录总数:15 总页数:2 当前页:1 首页 上一页 下一页 尾页 GO

来源:互联网 发布:单片机需要c语言 编辑:程序博客网 时间:2024/04/28 00:17

QQ:285679784   欢迎加入技术交流QQ群80669150 (附加信息:珠海 -"Lzw )一起学习 !




效果如下:     记录总数:15 总页数:2 当前页:1 首页 上一页 下一页 尾页  GO


实现Code:


aspx Code 直接拷贝大字体部分


                            <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false" AllowPaging="true"
                                PageSize="10" CssClass="grid" OnPageIndexChanging="GridView1_OnPageIndexChanged"
                                OnRowDataBound="GridView1_OnRowDataBound" OnRowCommand="GridView1_RowCommand">
                                <Columns>
XXXXXXXXXXXXXXX
                                </Columns>
                               <PagerTemplate>
                                    <table>
                                        <tr>
                                            <td style="text-align: right">
                                                记录总数:<asp:Label ID="lblTotal" runat="server" Text="<%# Total %>"></asp:Label>
                                                总页数:<asp:Label ID="lblPageCount" runat="server" Text="<%# ((GridView)Container.Parent.Parent).PageCount %>"></asp:Label>
                                                当前页:<asp:Label ID="lblPageIndex" runat="server" Text="<%#((GridView)Container.Parent.Parent).PageIndex + 1 %>"></asp:Label>
                                                <asp:LinkButton ID="btnFirst" runat="server" CausesValidation="False" CommandArgument="First"
                                                    CommandName="Page" Text="首页"></asp:LinkButton>
                                                <asp:LinkButton ID="btnPrev" runat="server" CausesValidation="False" CommandArgument="Prev"
                                                    CommandName="Page" Text="上一页"></asp:LinkButton>
                                                <asp:LinkButton ID="btnNext" runat="server" CausesValidation="False" CommandArgument="Next"
                                                    CommandName="Page" Text="下一页"></asp:LinkButton>
                                                <asp:LinkButton ID="btnLast" runat="server" CausesValidation="False" CommandArgument="Last"
                                                    CommandName="Page" Text="尾页"></asp:LinkButton>
                                                <asp:TextBox ID="txtNewPageIndex" runat="server" Text="<%# ((GridView)Container.Parent.Parent).PageIndex + 1%>"
                                                    Width="20px"></asp:TextBox>
                                                <asp:LinkButton ID="btnGo" runat="server" CausesValidation="False" CommandArgument="-1"
                                                    CommandName="PageGo" Text="GO"></asp:LinkButton>
                                            </td>
                                        </tr>
                                    </table>
                                </PagerTemplate>
                            </asp:GridView>



CS Code:OnRowCommand



public int iPage = -1;//记录Go的页数
public int Total = 0;//记录总记录数


protected void Page_Load(object sender, EventArgs e)


Total = ds.Tables[0].Rows.Count;//将数据源的记录数赋值给Total
this.GridView1.DataSource = ds;
this.GridView1.DataBind();




protected void GridView1_OnPageIndexChanged(object sender, GridViewPageEventArgs e)
{
    //分页时加判断  -1为正常分页,其它为Go到指定页数
    if (iPage == -1)
    {

        this.GridView1.PageIndex = e.NewPageIndex;
        this.Bind();
         }
}




protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
   //Go到指定页面
    if (e.CommandName == "PageGo")
    {
         GridViewRow drv = ((GridViewRow)(((LinkButton)(e.CommandSource)).Parent.Parent));
         TextBox txtNewPageIndex = (TextBox)drv.FindControl("txtNewPageIndex");
         try//如果输入内容不是数字,则清空Go的文本框
         {
             iPage = Convert.ToInt32(txtNewPageIndex.Text);
         }
         catch (Exception ex)
         {   
             txtNewPageIndex.Text = string.Empty;
         }

 //Go指定跳转页必须 大于0 && 小于总页数
         if (iPage < GridView1.PageCount + 1 && iPage > 0)
         {
             
GridView1.PageIndex = iPage - 1;
         }
 //绑定数据
         Bind();
      }

}


0 0
原创粉丝点击