2012-10-01 43 views
1

我已經實現了一個包含兩個網格的EXTJS 4.0 tabpanel。Extjs Tabpanel Resize

這一切都運行良好,當我第一次加載它。但是,當我去另一個面板(而不是tabpanel的孩子),然後重新加載tabpanel在視口或調整我的瀏覽器窗口,HTML子客戶端(我的網格)消失(並且它的HTML元素從tabpanel中刪除)。

enter image description here

人有爲什麼發生這種情況的任何想法?

的TabPanel:

Ext.define('EY.view.center.home.container.Panel', { 
    extend: 'Ext.tab.Panel', 
    alias: 'widget.containerhome', 
    id: 'containerhome', 
    activeTab: 1, 

    border: false, 
    resizeTabs:true, 

    items: [{ 
      title: 'Most Used clients', 
      iconCls: 'tabIcon', 
      xtype: 'mostUsedClients', 
      id: 'mostUsedClients', 
      scale: 'large' 
     },{ 
       title: 'All Clients', 
       xtype: 'homeclients', 
       id: 'homeclients', 
       scale: 'large' 
      } 
     ], 
    requires: [ 
     'EY.view.center.home.client.Grid', 
     'EY.view.center.home.client.mostUsedClients.mostUsedClients' 
], 


    initComponent: function() { 
     Ext.apply(this, { 



     }) 
     this.callParent(arguments); 
    } 
}); 

網:

Ext.define('EY.view.center.home.client.Grid', { 
    extend: 'Ext.grid.Panel', 
    alias: 'widget.homeclients', 
    id: 'homeclients', 
    baseCls: 'homeclients', 
    //frame:true, 
    store: 'Clients', //Ext.data.StoreManager.lookup('serviceStore'), 
    contextMenu: undefined, 

    border: false, 
    //flex: 1, 
    padding: 3, 
    hideHeaders: true, 

    columns: [ 
     { header: 'CLIENTS', field: 'textfield', flex: 1 } 

     ], 


    features: [ 
     Ext.create('Ext.grid.feature.RowBody', { 
      getAdditionalData: function (data, rowIndex, rec, orig) { 
       var headerCt = this.view.headerCt; 
       var colspan = headerCt.getColumnCount(); 
       return { 

        rowBody: createHtml(rec), 
        rowBodyCls: this.rowBodyCls, 
        rowBodyColspan: colspan 
       }; 
      } 
     }), 
     { 
      ftype: 'rowwrap' 
     } 
    ], 



    viewConfig: { 
     listeners: { 
      itemclick: function (list, index, target, record, event) { 
       if (event.target.id == 'grandAccess') { 

        var windowIsClosed = Ext.getCmp('ConfirmationWindow'); 
        if (!windowIsClosed) { 
         var clientId = index.data.id; 
         var clientVat = index.data.rn; 
         eDocsUser.currentClientName = index.data.n; 
         eDocsUser.currentClientId = clientId; 
         eDocsUser.currentClientRegisterNummer = clientVat; 

         showGrantAccesWindow(index); 
        } 
       } else { 

        if (Ext.getCmp('ConfirmationWindow')) { 
         Ext.getCmp('ConfirmationWindow').hide(); 
        } 
        loadDataOfSelectedClient(index); 
       } 

      } 
     } 
    }, 





    initComponent: function() { 


     this.callParent(arguments); 

    } 
}); 
+0

你可以發佈你的網格和tabpanel的代碼? – Wilk

+0

你去了;) – SnK

回答

0

我們通過改變網格尺寸調整問題的數據視圖解決了這個(網格RLY造成了很多問題,我TBH)。

然後我們通過改變固定的另一個問題:

layout.setActiveItem(Ext.getCmp('containerhome'), { 
           type: 'slide', 
           direction: 'left', 
           duration: 5000 
          }); 

layout.setActiveItem(0); 

我們(但不是我...:d)創建一個新的項目,而不是調用舊在卡面板中。