Ext.net中Gridpanel更新数据时,滚动条位置保持不变

场景:项目中用Ext.ne的t控件Gridpanel做实时数据,每隔3秒重写加载一次数据。

问题:数据刷新时,滚动条就会跳回到顶部。

想法:数据刷新时滚动条记录上一次的位置,保持滚动条不自己回到顶部。

解决办法:

js方法

  //刷新数据记录滚动条位置
        var Scroll = {
            beforerefresh: function (v) {
                v.scrollTop = v.scroller.dom.scrollTop;
                v.scrollHeight = v.scroller.dom.scrollHeight;
            },
            refresh: function (v) {
                Ext.override(Ext.grid.GridView, {
                    scrollToTop: function () {
                        var dom = this.scroller.dom;
                        dom.scrollTop = v.scrollTop + (v.scrollTop == 0 ? 0 : v.scroller.dom.scrollHeight - v.scrollHeight);
                        dom.scrollLeft = 0;
                    }
                })
            }
        }


GridPanel页面代码

 
                                            
                                               
                                                    
                                                    
                                                
                                            
                                        
                                    

问题解决。

你可能感兴趣的:(Ext.net中Gridpanel更新数据时,滚动条位置保持不变)