         invalidateDisplayList();
         
         itemRendererChanged = true;
+        typicalItemChanged = true;
     }
     
     private var _dataProvider:IList;

     *  Setting this property sets the typicalLayoutElement property
     *  of the layout.
     * 
     *  @default null
     */
    public function get typicalItem():Object

    }

    /**
     *  Return the index of the dataProvider item that the specified ItemRenderer
     *  is being used for, or -1 if there is no such item. 
     * 
     *  If renderer is null, or if a dataProvider was not specified, then -1
     *  is returned.
     * 
     *  Note that if the layout is virtual, ItemRenderers that are scrolled
     *  out of view may be reused.
     * 
     *  @param renderer The ItemRenderer.
     *  @return The index of the dataProvider item that the specified ItemRenderer is being used for, or -1
     * 
     *  @see #getRendererForItemAt
     *  @see dataProvider
     */
    public function getItemIndexForRenderer(renderer:IVisualElement):int
    {
        if ((dataProvider == null) || (renderer == null))
            return -1;
