Asp.net源码交流论坛 Asp.net交流讨论区Asp.net技术文章转:手把手教你如何扩展GridView之自带分页

1  /  1  页    1  跳转
发表新主题 回复该主题

标题: 转:手把手教你如何扩展GridView之自带分页

本主题由 董事长 51aspx 于 2008-6-12 8:45:13 执行 移动主题 操作

身份:董事长

 
  • UID:2
  • 来自:北京
  • 精华:27
  • 积分:1622
  • 帖子:1433
  • 注册: 2007-05-17
  • 状态: 离线
  • 威望:54.00
  • 金钱:261.25 元
 
源码发布专家

转:手把手教你如何扩展GridView之自带分页

您在使用GridView的时候是不是每次都要处理分页事件OnPageIndexChanging,面对成千上万的页面,您是否在页面中都有这样的代码: this.PageIndex = e.NewPageIndex;,看着原来写的臃肿的页面代码,您高兴的起来么?现在考验程序员水平的标准不再是写过多少行代码了,同志们,而是用最少的代码实现最多的功能。下面谈谈怎么实现一个自己会分页的GridView扩展,进一步实现GridView的自动化。
    首先谈谈实现这个功能的思路,我们在平时无奈的写下 this.PageIndex = e.NewPageIndex;的时候,下面作的事情肯定是获取数据源并绑定GridView,那么在我们的组件中,我们需要在GridView内部通知外部页面,“hi,页面大哥,我现在换页了,给俺个数据源,并给我绑上!”,这个时候,大家第一个反映肯定是利用委托事件了,我们用一个委托来实现去外部获取数据源的目的,声明一个委托:

public delegate void BindEventHandler();然后在GridView扩展中声明一个实现BindEventHandler的事件
    public event BindEventHandler Bind;
        public virtual void OnBind()
        {
            if (Bind != null)
            {
                Bind();
                if (DataSource != null)
                {
                    this.DataBind();
                }
            }
        }


然后重写OnPageIndexChanging事件

protected override void OnPageIndexChanging(GridViewPageEventArgs e)
        {
            this.PageIndex = e.NewPageIndex;
            OnBind();
        }:


现在对GridView的扩展就完成了,简单吧,使用的时候需要注意的是,GridView必须实现bind事件,就是一定要给OnBind设置一个函数,在这个函数里面可以页面参数(Request.Param)或者控件内容(TextBox1.Text),或者其他条件来获取动态数据,并将得到的数据集合设置为GridView的DataSource,这样GridView就自己会分页了。
51aspx 最后编辑于 2007-11-29 19:14:13
 
技术问题请直接发布到论坛
问题搜索请点击
引用 回复
 

身份:学员

 
  • UID:11291
  • 来自:
  • 精华:0
  • 积分:2
  • 帖子:2
  • 注册: 2008-03-27
  • 状态: 离线
  • 威望:0.00
  • 金钱:0.20 元

回复:转:手把手教你如何扩展GridView之自带分页

好啊,赞啊!!!!!!!!!!
引用 回复
 

身份:学员

 
  • UID:9588
  • 来自:
  • 精华:0
  • 积分:32
  • 帖子:32
  • 注册: 2008-03-12
  • 状态: 离线
  • 威望:0.00
  • 金钱:4.70 元

回复:转:手把手教你如何扩展GridView之自带分页

学到东西了,再也不用那么麻烦了~~~顶一下
引用 回复
 

身份:部门主管

 
  • UID:13793
  • 来自:石家庄
  • 精华:0
  • 积分:317
  • 帖子:307
  • 注册: 2008-04-16
  • 状态: 离线
  • 威望:10.00
  • 金钱:34.15 元

回复:转:手把手教你如何扩展GridView之自带分页

楼主的主意不错。但是系统开销不小。每次都要翻页都要帮定以下。
引用 回复
 

身份:程序员

 
  • UID:7672
  • 来自:
  • 精华:0
  • 积分:53
  • 帖子:53
  • 注册: 2008-02-24
  • 状态: 离线
  • 威望:0.00
  • 金钱:5.45 元

回复:转:手把手教你如何扩展GridView之自带分页

好东西,收藏了
引用 回复
 

身份:学员

 
  • UID:31676
  • 来自:
  • 精华:0
  • 积分:1
  • 帖子:1
  • 注册: 2008-09-19
  • 状态: 离线
  • 威望:0.00
  • 金钱:0.10 元

回复:转:手把手教你如何扩展GridView之自带分页

Very Good!
引用 回复
 

身份:学员

 
  • UID:31074
  • 来自:江苏
  • 精华:0
  • 积分:5
  • 帖子:5
  • 注册: 2008-09-14
  • 状态: 离线
  • 威望:0.00
  • 金钱:0.50 元

回复:转:手把手教你如何扩展GridView之自带分页

我是菜鸟,正在学习
 
我是新手,多多指教!
引用 回复
 
1  /  1  页    1  跳转
发表新主题 回复该主题

现在时间是:2008-11-24 02:47:15 京ICP备06046876号