     public function itemToRenderer(item:Object):IFactory
     {
         const itemRendererFunction:Function = itemRendererFunction;
-        return (itemRendererFunction != null) ? itemRendererFunction(item) : itemRenderer;
+        var factory:IFactory = (itemRendererFunction != null) ? itemRendererFunction(item, this) : itemRenderer;
+        
+        return factory;
     }
     
     /**

    [Bindable("itemRendererFunctionChanged")]
    
    /**
     *  If specified, the value of this property must be a function 
     *  that returns an item renderer IFactory based on its dataProvider item 
     *  parameter.  Specifying an itemRendererFunction makes it possible to 
     *  employ more than one item renderer in this column.  
     * 
     *  <p>Here's an example of an itemRendererFunction:</p>
     * 
     *  <pre>
     *  function myItemRendererFunction(item:Object, column:GridColumn):IFactory
     *  {

    [Bindable("labelFunctionChanged")]
    
    /**
     *  An idempotent function that converts a dataProvider item into a column-specific string
     *  that's used to initialize the item renderer's <code>label</code> property.
     * 
     *  <p>A labelFunction can be use to combine the values of several dataProvider item
     *  properties into a single string.  If specified, this property is used by the 
     *  <code>itemToLabel()</code> method, which computes the value of each item 
     *  renderer's label property in this column.
