【问题标题】:Reconfiguring grid columns in ExtJs4 - SelModel disappears?在 ExtJs4 中重新配置网格列 - SelModel 消失了吗?
【发布时间】:2011-11-25 13:43:18
【问题描述】:

我正在定义一个具有selModel 的网格。
每次加载商店时,都会使用网格Reconfigure 方法动态重新配置网格列。
但是,当我这样做时,网格 selModel 消失了。
如何重新配置​​网格列以包含 selModel。
下面是一些示例代码:

//The Selection Model for the grid.
var sm = new Ext.selection.CheckboxModel();

//The Grid
var grid = new Ext.grid.Panel({
    store: store,
    selModel: sm,
    columns:[{
            header: 'Loading ...'
        }]
 });

//The store on load event where the columns are reconfigured
store.on('load', function(store){
    var columns = store.data.Data.items;
    grid.reconfigure(store, columns);
}, this);

在 ExtJs3 中,我可以将 selModel 指定为列本身,但在 ExtJs4 中并非如此。那么,即使在重新配置网格列之后,如何确保 selModel 始终可见?

【问题讨论】:

  • 我看到了同样的问题。 Sencha 论坛收到了一些回复,但至少对我不起作用:goo.gl/b0DyG

标签: javascript extjs extjs4


【解决方案1】:

这是一个在 Extjs 版本 [4.0.2] 中报告的错误。现在,它已在 Extjs 版本 [4.0.7] 中解决。

【讨论】:

  • 确定解决了吗?我在 4.0.7 上,现在当我使用附加的选择模型进行重新配置时,我得到一个双复选框列。
【解决方案2】:

来自 3.3.1 API 文档(我的重点):

重新配置网格以使用 不同的存储和列模型和 触发“重新配置”事件。这 视图将绑定到新对象 并且神清气爽。 请注意,在 重新配置 GridPanel,某些 现有设置可能会变成 无效。 例如 配置的 autoExpandColumn 可能没有 不再存在于新的 ColumnModel 中。 此外,现有的 PagingToolbar 将 仍然绑定到旧商店,并且 将需要重新绑定。任何插件都可能 还需要重新配置新的 数据。

我相信您只需要在重新配置网格后重新设置 SelectionModel。

【讨论】:

  • 感谢您的回复。知道如何重置 SelectionModel 吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-06-01
  • 2011-10-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多