当前位置: 首页 > news >正文

Gridview自定义分页

  在这里我使用Gridview中自带的分页,然后进行扩展,代码如下:

 

 <PagerTemplate>
                            <div class="divPager">
                                第<asp:Label ID="lblCurrrentPage" runat="server" ForeColor="Red" Text="<%#(((GridView)Container.NamingContainer).PageIndex + 1) %>"></asp:Label>页
                                /共<asp:Label ID="lblPageCount" runat="server" CssClass="Counts" Text="<%#(((GridView)Container.NamingContainer).PageCount) %>" />页
                                <asp:LinkButton ID="lbnFirst" runat="Server" Text="首页" Enabled='<%# ((GridView)Container.NamingContainer).PageIndex != 0 %>'
                                    CommandName="Page" CommandArgument="First"></asp:LinkButton>
                                <asp:LinkButton ID="lbnPrev" runat="server" Text="上一页" Enabled='<%# ((GridView)Container.NamingContainer).PageIndex != 0 %>'
                                    CommandName="Page" CommandArgument="Prev"></asp:LinkButton>
                                <asp:LinkButton ID="lbnNext" runat="Server" Text="下一页" Enabled='<%# ((GridView)Container.NamingContainer).PageIndex != (((GridView)Container.NamingContainer).PageCount - 1) %>'
                                    CommandName="Page" CommandArgument="Next"></asp:LinkButton>
                                <asp:LinkButton ID="lbnLast" runat="Server" Text="尾页" Enabled='<%# ((GridView)Container.NamingContainer).PageIndex != (((GridView)Container.NamingContainer).PageCount - 1) %>'
                                    CommandName="Page" CommandArgument="Last"></asp:LinkButton>
                                到第<asp:TextBox runat="server" ID="inPageNum" Width="50" MaxLength="5"></asp:TextBox>页<asp:Button
                                    ID="Button1" CommandName="go" runat="server" Text="Go" />
                            </div>
                            <div class="divPageSize">
                                每页显示记录数:<asp:TextBox ID="txtPageSize" runat="server" Width="25" MaxLength="3"></asp:TextBox><asp:Button
                                    ID="btnSetPageSize" runat="server" Text="设置" CommandName="SetPageSize" />
                            </div>
                            <div style="float: left">
                                <span>总车载机数量:<asp:Label ID="lblCounts" runat="server" Text='' CssClass="Counts"></asp:Label></span>
                                <span>在线车载机数量:<asp:Label ID="lblOnlineCounts" runat="server" Text="" CssClass="Counts"></asp:Label></span>
                                <span>当天连上车载机数量:<asp:Label ID="lblCurrentOnlineCount" runat="server" Text="" CssClass="Counts"></asp:Label></span></div>
                        </PagerTemplate>

后台代码如下:

 

 

  protected void gvEquData_RowCommand(object sender, GridViewCommandEventArgs e)
    {
        try
        {
            switch (e.CommandName)
            {
                case "go":
                    WebTextBox tb = (WebTextBox)gvEquData.TopPagerRow.FindControl("inPageNum");
                    if (CommonClass.StrIsInt(tb.Text.Trim()))
                    {
                        int num = Int32.Parse(tb.Text.Trim());
                        GridViewPageEventArgs ea = new GridViewPageEventArgs(num - 1);
                        gvEquData_PageIndexChanging(null, ea);
                    }
                    else
                    {
                        ScriptManager.RegisterStartupScript(UpdatePanel1, this.GetType(), "ErrorInfo", "<script>alert('输入格式有误!请重新输入');</script>", false);
                        BindGridViewData();
                    }
                    break;
                case "SetPageSize":
                    WebTextBox tb2 = (WebTextBox)gvEquData.TopPagerRow.FindControl("txtPageSize");
                    string strPageSize = tb2.Text.Trim();
                    if (CommonClass.StrIsInt(strPageSize)) //&& int.Parse(strPageSize) > 0 && int.Parse(strPageSize) <= EquSearchBll.equBll.GetRows()
                    {
                        AppconfigClass.SetValue("EquPageSize", strPageSize);
                    }
                    else
                    {
                        ScriptManager.RegisterStartupScript(UpdatePanel1, this.GetType(), "ErrorInfo", "<script>alert('输入格式有误!请重新输入');</script>", false);
                    }
                    BindGridViewData();
                    break;
                default:
                    break;
            }
        }
        catch (Exception ex)
        {
            CommonClass.WriteExceptionInfo(ex.Message);
        }
    }


 

 

转载于:https://www.cnblogs.com/james1207/p/3400186.html

相关文章:

  • C语言学习趣事_关于C语言中的输入输出流
  • ios7下不能录音问题解决
  • iCloud的真正目的:置Windows于死地
  • json数据与字符串的相互转化
  • 服务器跟不上,网站打开慢,服务器自动重启,怎么办?
  • 盒子游戏(湖南省第七届大学生计算机程序设计竞赛)
  • cout设置16进制大写输出
  • Exchange2010 SP1配置证书
  • RPC、RMI、HTTP、REST的区别
  • apache日志轮询技术(cronolog and rotatelogs)小结
  • Lambda表达式和匿名方法中不支持yield return
  • 通过HTML调用C# [架构]
  • 创建dynamics CRM client-side (五) - 使用regular expression (正则表达式)来检查phone number...
  • C# 中 LISTVIEW用法
  • 【基本数据结构】并查集-C++
  • (ckeditor+ckfinder用法)Jquery,js获取ckeditor值
  • 《用数据讲故事》作者Cole N. Knaflic:消除一切无效的图表
  • 【RocksDB】TransactionDB源码分析
  • Intervention/image 图片处理扩展包的安装和使用
  • JWT究竟是什么呢?
  • nodejs调试方法
  • PaddlePaddle-GitHub的正确打开姿势
  • Python - 闭包Closure
  • Sass 快速入门教程
  • select2 取值 遍历 设置默认值
  • Sequelize 中文文档 v4 - Getting started - 入门
  • SpringBoot几种定时任务的实现方式
  • Web标准制定过程
  • 持续集成与持续部署宝典Part 2:创建持续集成流水线
  • 创建一个Struts2项目maven 方式
  • 诡异!React stopPropagation失灵
  • 近期前端发展计划
  • 让你成为前端,后端或全栈开发程序员的进阶指南,一门学到老的技术
  • 实战|智能家居行业移动应用性能分析
  • 小程序测试方案初探
  • 以太坊客户端Geth命令参数详解
  • “十年磨一剑”--有赞的HBase平台实践和应用之路 ...
  • 数据可视化之下发图实践
  • ​RecSys 2022 | 面向人岗匹配的双向选择偏好建模
  • (145)光线追踪距离场柔和阴影
  • (附源码)spring boot基于小程序酒店疫情系统 毕业设计 091931
  • (强烈推荐)移动端音视频从零到上手(上)
  • (原創) 如何刪除Windows Live Writer留在本機的文章? (Web) (Windows Live Writer)
  • (转)可以带来幸福的一本书
  • (转载)在C#用WM_COPYDATA消息来实现两个进程之间传递数据
  • ****Linux下Mysql的安装和配置
  • .Family_物联网
  • .java 指数平滑_转载:二次指数平滑法求预测值的Java代码
  • .NET BackgroundWorker
  • .NET CORE 第一节 创建基本的 asp.net core
  • .NET Core 项目指定SDK版本
  • .NET Framework 服务实现监控可观测性最佳实践
  • .NET 除了用 Task 之外,如何自己写一个可以 await 的对象?
  • .Net(C#)常用转换byte转uint32、byte转float等
  • .NET建议使用的大小写命名原则