Extjs4,如何获取选定的行存储?

时间:2012-05-25 16:32:00

标签: extjs4

我想绘制一个基于另一个网格中选定行的网格。

我希望重用原始网格的商店。所以我需要过滤商店只选一个。

有可能吗?或者我是否必须再次为新网格定义商店?

例)

var myGrid = this.oriGrid().getSelectionModel().getSelection();

var myWindow = Ext.create('Ext.window.Window', {
    title: 'Test',
    autoHeight: true,
    width: 700,
    layout: 'fit',
    modal: true,
    items: {
    xtype: 'grid',
    columns: [
        { header: 'PK', dataIndex: 'PK', flex: 1 },
        { header: 'FK', dataIndex: 'FK', width: 200 },
    ],
    store: myGrid[0].store // it will show all of list, I want to show only I selected row.
    }
}).show();

有人知道,请指教我〜谢谢!

2 个答案:

答案 0 :(得分:1)

不能有两个UI元素,如果它们同时出现,则使用具有不同过滤器的相同商店对象。

您需要将所需的存储和复制记录克隆到另一个实例中。

答案 1 :(得分:0)

我认为这里有更好的解决方案。继承Store,新商店和用户过滤器功能与您的选择,如下所示:

 secGridStore = new Ext.Data.Store('YourStore');
 secGridStore.filter({
   filterFn: function(item) { return (item in YourStore) } 
 }); 

对不起,此代码不正确,但您可以看到我的想法。