feifeishuashua
2010-10-19 16:12
浏览 231

GridPanel中要用到两个view,改怎么办?

var grid_daily_hq = new Ext.grid.GridPanel({

autoScroll : true,
autoShow : true,
border : false,
store : store_daily_hq,
stripeRows : true,
cm : cm,
sm : new Ext.grid.RowSelectionModel({
singleSelect : true
}),
pageSize : pagesizes,
autoExpandColumn : 'name',
frame : true,
tbar : ['合同查询: ', ' ', new Ext.app.SearchField({
pageSize : pagesizes,
store : store_daily_hq,
paramName : '_Price[like][double]', // 需要查询的字段和方式
width : 250
})],
bbar : pagingBar_daily_hq,
view : new Ext.grid.GridView({ [color=red]-----第一个view[/color]
forceFit : true,
getColumnStyle : function(col, isHeader) {
var style = !isHeader? (this.cm.config[col].css || ''): '';
style += 'width:' + this.getColumnWidth(col)+ ';';
if (this.cm.isHidden(col)) {
style += 'display:none;';
}
if (isHeader) {
var align = 'center';
if (align) {
style += 'text-align:' + align + ';';
}
} else {
var align = this.cm.config[col].textalign;
if (align) {
style += 'text-align:' + align + ';';
}
}
return style;
}
}),
view : new Ext.grid.GroupingView({ [color=red]-----第二个view[/color]
forceFit : true,
groupTextTpl : '{text} ({[values.rs.length]} {["条"]})'
}),
iconCls : 'icon-grid'
});

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

4条回答 默认 最新

  • lizhiyezi 2010-10-19 17:33
    已采纳

    销毁有问题,使用下面代码吧

    (function() {
    if (this.colMenu) {
    Ext.menu.MenuMgr
    .unregister(this.colMenu);
    this.colMenu.destroy();
    delete this.colMenu;
    }
    if (this.hmenu) {
    Ext.menu.MenuMgr.unregister(this.hmenu);
    this.hmenu.destroy();
    delete this.hmenu;
    }

                                    if (this.dragZone) {
                                        this.dragZone.unreg();
                                    }
    
                                    Ext.fly(this.innerHd).removeAllListeners();
                                    Ext.removeNode(this.innerHd);
    
                                    Ext.destroy(this.resizeMarker,
                                            this.resizeProxy, this.focusEl,
                                            this.mainBody, this.scroller,
                                            this.mainHd, this.mainWrap,
                                            this.dragZone, this.splitZone,
                                            this.columnDrag, this.columnDrop);
    
                                    this.initData(null, null);
    
                                    Ext.EventManager.removeResizeListener(
                                            this.onWindowResize, this);
                                    this.purgeListeners();
                                }).call(grid.view)
                                grid.view.purgeListeners();
                                grid.purgeListeners();
                                grid.view = grid.view2;
                                grid.view.init(grid);
                                grid.view.render();
                                grid.view.refresh(true);
    
    已采纳该答案
    打赏 评论
  • lizhiyezi 2010-10-19 16:50

    吧第二2个view改成
    view1 : new Ext.grid.GroupingView({ -----第二个view
    forceFit : true,
    groupTextTpl : '{text} ({[values.rs.length]} {["条"]})'
    }),

    下面代码切换view对象。
    grid.getView().destroy();
    grid.view = grid.view2;
    grid.view.init(grid);
    grid.view.render();
    grid.view.refresh(true);

    打赏 评论
  • lizhiyezi 2010-10-19 17:03

    你的gridPanel 支持 GroupingView视图吗?

    打赏 评论
  • lizhiyezi 2010-10-19 17:04

    你使用什么版本?出现什么错误

    打赏 评论

相关推荐 更多相似问题