分页解决方案 之 QuickPager的使用方法(PostBack分页、自动获取数据)
时间:2022-04-28
本文章向大家介绍分页解决方案 之 QuickPager的使用方法(PostBack分页、自动获取数据),主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
适用范围:网站后台管理、OA、CRM、CMS等,从关系型数据库里提取数据,愿意使用Pager_SQL、DataAccessLibrary的情况。
最佳数据库:MS SQL。
优点:只需要设置几个属性即可,不用编写“分页事件”的处理代码。可以很方便的实现查询功能,以及保存查询条件。
Demo下载:http://www.cnblogs.com/jyk/archive/2008/07/29/1255891.html
使用方法:
using JYK.Data;
using JYK.Controls;
using JYK.Controls.Pager;
namespace JYK.Manage.Help.QuickPager
{
/**//// <summary>
/// PostBack分页方式、自定义提取数据的使用方法
/// </summary>
public partial class postback01 : System.Web.UI.Page
{
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
//数据访问函数库的实例
DataAccessLibrary dal = DALFactory.CreateDAL();
Pager1.DAL = dal;
//定义QuickPager_SQL,设置Page属性
Pager1.PagerSQL.Page = this;
//设置显示数据的控件
Pager1.ShowDataControl = this.GV;
}
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
SetPagerInfo(); //设置表名、字段名等
}
}
给QuickPager_SQL 设置属性,以便拼接SQL#region 给QuickPager_SQL 设置属性,以便拼接SQL
private void SetPagerInfo()
{
Pager1.PagerSQL.TableName = "News_NewsInfo"; //表名或者视图名称
Pager1.PagerSQL.TableShowColumns = "*"; //需要显示的字段
Pager1.PagerSQL.TableIDColumn = "NewsID"; //主键名称,不支持复合主键
Pager1.PagerSQL.TableOrderByColumns = "NewsID"; //排序字段,根据分页算法而定,可以支持多个排序字段
Pager1.PagerSQL.TableQuery = ""; //查询条件
Pager1.PageSize = 4; //一页显示的记录数
//设置分页方式
Pager1.PagerSQL.SetPagerSQLKind = PagerSQLKind.MaxMin;
}
#endregion
在拼接SQL和提取数据、自动绑定控件之前触发,#region 在拼接SQL和提取数据、自动绑定控件之前触发,
protected void Pager1_PageChanged(object sender, JYK.Controls.Pager.PageArgs e)
{
//在拼接SQL和提取数据、自动绑定控件之前触发,
Response.Write("绑定前<BR>");
}
#endregion
在自动绑定控件之后触发,#region 在自动绑定控件之后触发,
protected void Pager1_GridBinded(object sender, JYK.Controls.Pager.PageArgs e)
{
//在自动绑定控件之后触发
//计算时间
Response.Write("绑定后,使用的SQL语句:");
Response.Write(Pager1.PagerSQL.GetSQLByPageIndex(Pager1.PageIndex)); //测试用
}
#endregion
处理查询数据的情况#region 处理查询数据的情况
protected void Btn_Search_Click(object sender, EventArgs e)
{
//获取查询条件
string query = "";
string tmp = "";
tmp = this.Txt_Title.TextTrimNone;
if (tmp.Length > 0)
{
if (query.Length == 0)
query = " title like '%" + tmp + "%'";
else
query += " and title like '%" + tmp + "%'";
}
//还可以添加其他的查询条件,这里省略
//给QuickPager_SQL 设置查询条件
this.Pager1.PagerSQL.TableQuery = query;
//重新拼接SQL语句
this.Pager1.PagerSQL.CreateSQL();
//绑定控件,显示第一页的数据
this.Pager1.BindFirstPage();
}
#endregion
添加后重新显示数据#region 添加后重新显示数据
protected void Btn_Add_Click(object sender, EventArgs e)
{
//添加新的数据后,显示第一页的数据
this.Pager1.BindFirstPage();
}
#endregion
修改数据后重新显示当前页的数据#region 修改数据后重新显示当前页的数据
protected void Btn_Mod_Click(object sender, EventArgs e)
{
//比如在第三页修改了一条数据,修改完毕后,重新显示第三页的数据。
this.Pager1.BindThisPage();
}
#endregion
添加后重新显示数据#region 添加后重新显示数据
protected void Btn_Del_Click(object sender, EventArgs e)
{
//比如在第三页删除了一条数据后,重新显示第三页的数据。
//和修改数据后重新显示的区别在于,删除数据后需要重新统计总记录数,和总页数
this.Pager1.BindThisPageForDelete();
}
#endregion
}
}
- 使用root用户连接Ubuntu16.04时,提示SSH连接被拒绝
- CSS魔法堂:Box-Shadow没那么简单啦:)
- java操作redis: 将string、list、map、自定义的对象保存到redis中
- 运行第一个Docker容器-Docker for Web Developers(1)
- 手动实现jQuery Tools里面tab功能
- Angular企业级开发(9)-前后端分离之后添加验证码
- 基于thrift的微服务框架
- Sublime Text 快速格式化
- HTML中拖放介绍
- 打造高效前端工作环境 - tmux
- 基于thrift的微服务框架
- thrift中的超时(timeout)坑
- 基于webmagic的爬虫项目经验小结
- Docker Hub工作流程-Docker for Web Developers(6)
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Flink Timer(定时器)机制及实现详解
- android:运行时权限工具类的封装
- Android:非Activity跳转Activity时要加FLAG?
- Java自动化测试(接口鉴权 16)
- Android:Tools命名空间原来是有大用处的
- Android:无线调试就是这么简单
- Java自动化测试(回写与断言 17)
- 一篇就够——Kotlin快速入门
- 微信大牛教你深入了解数据库索引
- SqlServer 资源消耗查询
- Android:检查通知权限并跳转到通知设置界面
- OpenShift应用发布和运维设计
- Android:依赖Module的问题汇总
- Android:加载网图时精确获取图片格式
- Android:8.0中未知来源安装权限变更