             
             gridDimensions.clear();
             
-            // clearing the gridDimensions resets rowCount
+            // Reset row count because dataProvider length may have changed.
             gridDimensions.rowCount = _dataProvider ? _dataProvider.length : 0;
         }
         

        }

        if (gridDimensions)
        {
            gridDimensions.columnsCollectionChanged(event);
        
            // ToDo(klin): Manipulating columns should not change the rowCount.
            if (dataProvider)
                gridDimensions.rowCount = dataProvider.length;
        }
        
        if (gridLayout)
            gridLayout.columnsCollectionChanged(event);

            case CollectionEventKind.RESET:
                hoverColumnIndex = gridDimensions.getColumnIndexAt(mouseX, mouseY);
                break;
        }
    }

    /**
