2013-04-12 16 views
0

我需要保持重新排序列的默認功能,並添加 可能性在第二格刪除列,建設中的最後一個列表 與第一網格的列。ExtJS的 - 拖動列標題,其他電網

我希望已經清楚。

+0

你的問題不太清楚。顯示你的嘗試。 –

+0

我需要在另一個網格中創建一個DropZone,它從第一個網格接收列標題的拖動,保留最後一個網格的默認重排序列功能。 我正在擴展DropZone,並認爲我在正確的方式。 – hesenger

回答

1

我解決了擴展DropZone的問題。這個實現作爲構造函數參數接收目標網格,並且這個參數位於源網格的rbar(停靠控制)中。關鍵是將ddGroup設置爲「header-dd-zone-」加上源網格中的id。我希望這是有用的。

Ext.define('Crud.FilterDropZone', { 
    extend: 'Ext.dd.DropZone' 

    , constructor: function() {} 

    , init: function (grid) { 
     var me = this; 

     if (grid.rendered) { 
      me.grid = grid; 
      me.ddGroup = 'header-dd-zone-' + grid.up('grid').id; 
      grid.getView().on({ 
       render: function(v) { 
        me.view = v; 
        Crud.FilterDropZone.superclass.constructor.call(me, me.view.el); 
       }, 
       single: true 
      }); 
     } else { 
      grid.on('render', me.init, me, {single: true}); 
     } 
    } 

    , getTargetFromEvent: function (e) { 
     return {}; 
    } 

    , onNodeDrop: function (nodeData, source, e, data) { 
     var header = data.header 
      , store = Ext.getCmp(e.target.id).getStore(); 

     //store.add(new store.RecordType({ property: header.text, value: '', reference: header.dataIndex})); 
     store.add([[header.text, '', header.dataIndex]]); 
    } 

});