Extjs:网格不显示记录

时间:2018-09-07 14:40:43

标签: extjs tabs grid store

可能这可能是我再次发布的愚蠢问题,而且我是Extjs的新手。我创建了2个标签,每个标签中还包含一个网格。我能够获取数据并将其添加到各自的商店中,但是在单击另一个窗口小部件或取消选择一个窗口小部件并再次选择相同的窗口小部件时,即使商店中包含记录,网格也不会呈现任何数据。 这是我创建选项卡和其中包含的网格的代码的一部分。

{
        title : '<b>Data Filters</b>',
        defaults : {
            border : false
        },
        items : [ {
            defaults : {
                border : false
            },
            items : [ {
                // xtype : 'combo',
                // fieldLabel : 'Filter Join Type',
                // reference : 'dataFilterJoinType',
                // store : [ 'AND', 'OR' ],
                // hidden : true,
                // defaultAlign : 'r-c',
                // listeners : {
                // select : 'setFilterOnWidget'
                // }
                xtype : 'radiogroup',
                fieldLabel : 'Filter Join Type',
                reference : 'datafilterjointype',
                items : [ {
                    boxLabel : 'AND',
                    name : 'joinType',
                    inputValue : 'AND'
                }, {
                    xtype : 'tbspacer',
                    width : '50px'
                }, {
                    boxLabel : 'OR',
                    name : 'joinType',
                    inputValue : 'OR'
                } ],
                hidden : true,
                // defaultAlign : 'r-c',
                margin : '10 0 10 5',
                listeners : {
                    change : 'updateFilterOnTypeChange'
                }
            } ]
        }, {
            xtype : 'tabpanel',
            deferredRender : true,
            reference : 'datafilterpropertygrid',
            border : false,
            items : [ {
                title : 'Data filters',
                items : [ {
                    xtype : 'datafiltergrid',
                    reference : 'datafiltergrid',
                    deferredRender : true,
                }, {
                    xtype : 'datafilterpropgrid',
                    reference : 'datafilterpropgrid',
                    hidden : false,
                    deferredRender : true,
                } ] 
            },
            { 
                title : 'List filters',
                items : [ {
                    xtype : 'listfiltergrid',
                    reference : 'listfiltergrid',
                    deferredRender : true,
                }, {
                    xtype : 'listfilterpropgrid',
                    reference : 'listfilterpropgrid',
                    hidden : false,
                    deferredRender : true,
                } ]
            } ] , 
        } ]
    }

这是代码的一部分,我将数据填充到商店中并显示网格:

setListFiltersOnWidgetSelection : function(widget) {
        var filterJoinType = this.lookupReference('datafilterjointype'), //
        filterGrid = this.lookupReference('listfiltergrid'), //
        filterPropGrid = this.lookupReference('listfilterpropgrid');

        filterJoinType.show();
        filterGrid.show();
        filterPropGrid.hide();
        filterPropGrid.sourceConfig.targetBindingEditor.field.getStore().loadData(
                widget.getDesignMode().visibleBindingStore.getRange());
        filterPropGrid.setDefaultProperties();
        // filterPropGrid.showButtons(false);
        if (widget.listFilter) {
            filterGrid.getStore().loadData(widget.listFilter.filters);
            filterJoinType.suspendEvents();
            filterJoinType.setValue({
                joinType : widget.listFilter.filterJoinType
            });
            filterJoinType.resumeEvents();
        } else {
            filterJoinType.setValue({
                joinType : 'AND'
            });
            filterGrid.resetStore();
        }
        filterGrid.getView().refresh();
        filterGrid.addEmptyRow();
    },

filterGrid是我正在其中加载数据并试图显示的网格。

我面临的问题是,当我在UI中选择一个小部件时,我可以看到记录,但是当我选择另一个小部件或单击鼠标左键并返回时,即使没有显示,也看不到记录。将显示已加载商店的网格。这种行为可能是什么原因? 非常感谢您的帮助,并在此先感谢。

0 个答案:

没有答案