代码改变世界

分页解决方案 之 QuickPager的使用方法(PostBack分页、自定义获取数据)

2009-05-25 17:33  金色海洋(jyk)  阅读(1278)  评论(0编辑  收藏  举报

 

 

      适用范围:网站后台管理、OA、CRM、CMS等,从关系型数据库里提取数据,或者XML等获取数据,不愿意使用Pager_SQL、DataAccessLibrary的情况。

      优点:可以使用自己喜欢的方式获取数据,不仅仅限于关系型数据库,其他的也都可以。

      缺点,要写的代码比较多。

      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 PostBack02 : System.Web.UI.Page
    
{
        
//如果您不使用Pager_SQL和DataAccessLibrary的话,那么就不用下面两行代码了。
        QuickPagerSQL pagerSQL = new QuickPagerSQL();
        
//数据访问函数库的实例
        DataAccessLibrary dal = DALFactory.CreateDAL();

        
protected override void OnInit(EventArgs e)
        
{
            
base.OnInit(e);
            
            
//设置显示数据的控件
            Pager1.ShowDataControl = this.GV;

            
//设置成自定义的方式获取
            Pager1.GetDataKind = PagerRunKind.Customer;

            pagerSQL.Page 
= this;
           
        }


        
protected void Page_Load(object sender, EventArgs e)
        
{
            
if (!Page.IsPostBack)
            
{
                
//设置QuickPager_SQL的属性
                GetPagerSQL();

                
//设置分页方式
                pagerSQL.SetPagerSQLKind = PagerSQLKind.MaxMin;


                
//设置总记录数、总页数
                SetRecprdCount();

                
//获取第一页的记录
                string sql = pagerSQL.GetSQLByPageIndex(1);

                
//数据访问函数库的实例

                GV.DataSource 
= dal.ExecuteFillDataTable(sql);
                GV.DataBind();
            }


        }


        
设置QuickPager_SQL的属性

        
设置总记录数、总页数

        
在拼接SQL和提取数据、自动绑定控件之前触发,

        
在自动绑定控件之后触发,

        
处理查询数据的情况

    }

}

2