title: EXTJS GridPanel Inside Window Is Not Loading Updated Data From Store When Window is Re-Opened
body: <p>I have an EXT form that opens a window containing an GridPanel where the data store needs to get updated each time the form is submitted. The grid displays a list of files that are uploaded from the client computer. All of this works fine until I close the window and select a different group of files. The problem I am having is when the window containing the grid is closed and then re-opened, it is displaying the first set of files loaded previously instead of the new list of files submitted from the form. Hopefully this makes sense.</p>
  
  <p>I have tried grid.getView().refresh() but that doesn't update the grid. Below is my code for the window, form, grid, and JSON store. If anyone has seen this before I would sure appreciate some advice. (apologies for the code formatting...had a lot of trouble getting it to be readable this text box)</p>
  
  <pre><code>//window that holds grid   
  SPST.window.POGCheckInWindow = Ext.extend(SPST.window.WindowBaseCls, {
      id: 'POGCheckInWindow'  
      ,initComponent:function() {  
      var config = {  
              title: 'Check In POG Files'
              ,width      : 1000  
              ,height     : 500  
              ,maximizable: false  
              ,shadow : false  
              ,closeable: true  
              ,closeAction: 'hide'  
         ,items: [{  
         xtype   : 'checkin_results_grid'  
      ,id     : 'POGCheckInGrid'  
      ,height : 450  
               ,width  : 990  
          ,frame  : true }   
  ]};  
  Ext.apply(this, Ext.apply(this.initialConfig, config));   
      SPST.window.POGCheckInWindow.superclass.initComponent.apply(this, arguments);  
      }    
  });
  Ext.reg('pog_checkin_window',SPST.window.POGCheckInWindow);  
  
  
  
  //function to submit the form, load the store and open the window containing the gridpanel  
  checkin:function() {  
      if (this.getForm().isValid()){  
          this.getForm().submit({  
          url: 'components/POG.cfc?method=uploadPOGTemp' + '&amp;dsn=' + SPST_dsn  
          ,method: 'GET'  
          ,scope:this  
          ,success: function(form, action){  
  var chkinwin = new SPST.window.POGCheckInWindow();  
  
  Ext.getCmp('POGCheckInGrid').getStore().load({params:  {dsn: SPST_dsn, 
  pogfiles: action.result.pogfiles, project_id: action.result.project_id}  
  ,callback: function(rec, options, success){      
  Ext.getCmp('POGCheckInGrid').getView().refresh();  
              }  
              });  
              chkinwin.show();  
          }
          ,failure:this.showError  
          ,waitMsg:'Uploading files...'
          });  
      }  
  }  
  
  
  
  // create the data store for grid
      var chkstore = new Ext.data.JsonStore({  
      // JsonReader configuration  
      root           : 'jsonlist' 
      ,fields        : chkfields  
      ,id    : 'chkstoreid'  
      // JsonStore configuration  
      ,autoLoad       : true  
      ,remoteSort     : true  
      ,autoDestroy: true
      ,sortInfo: {  
               field: 'POGNAME',  
               direction: 'ASC'  
          }
      ,url   : 'components/POG.cfc?method=getPOGTempFiles' + '&amp;dsn=' + SPST_dsn  
  
  });
  
  
  //grid that loads inside ext window  
  SPST.grid.POGCheckInGrid = Ext.extend(SPST.grid.GridPanelBaseCls, {  
  view: new Ext.grid.GridView({  
      getRowClass: function(rec, idx, rowPrms, ds)  
      {  
      return rec.data.VERSION_DSC === 'INVALID VERSION#' ? 'invalid-cls' : '';  
      }  
  }),  
  initComponent : function() {    
  var config = {  
      colModel   : chkcolModel  
      ,selModel   : chkselModel  
      ,store      : chkstore  
      ,autoDestroy: true  
      ,xtype      : 'checkin_results_grid'  
      ,buttons: [  
          {  
          text: 'Upload'  
          ,handler: this.loadPOGCheckin  
          ,scope  : this  
          },  
          {  
          text: 'Cancel'  
          ,handler: this.checkinwindowclose  
          ,scope  : this  
          }
  ]  
  }  
  Ext.apply(this, Ext.apply(this.initialConfig, config));  
  SPST.grid.POGCheckInGrid.superclass.initComponent.apply(this, arguments);  
  }  
  
  ,onRender  : function() {  
  this.getBottomToolbar().bindStore(chkstore);  
  SPST.grid.POGCheckInGrid.superclass.onRender.apply(this, arguments);  
  }
  </code></pre>