             return;
         
         _width = value;
+        
+        maybeInvalidateGrid();
+
         dispatchChangeEvent("widthChanged");
-        // TBD invalidate grid
     }
     
     //----------------------------------

        }
        
        dispatchChangeEvent("itemRendererChanged");
        
        // TBD invalidate grid    
    }
    
    //----------------------------------

            dispatchEvent(new Event(type));
    }
    
    private function maybeInvalidateGrid():void
    {
        if (grid)
        {
            grid.invalidateSize();
            grid.invalidateDisplayList();
        }
    }
    
    //----------------------------------
    //  grid
    //----------------------------------
