     }
     
     //----------------------------------
+    //  dataTipFormatter
+    //----------------------------------
+    
+    private var _dataTipFormatter:IFormatter = null;
+    private var dataTipFormatterStyleParentInvalid:Boolean = false;
+    
+    [Bindable("dataTipFormatterChanged")]
+    [Inspectable(category="General")]
+    
+    /**
+     *  Specifies the formatter used by the column's itemToDataTip() method to 
+     *  convert dataProvider items to strings.
+     * 
+     *  <p>If the formatter's <code>styleParent</code> wasn't specified, it's set
+     *  to the column's grid, so that the formatter inherits the grid's "locale" style.</p>
+     *
+     *  @default null
+     * 
+     *  @see #itemToDataTip
+     *  @see #formatter
+     *
+     *  @default null
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 2.5
+     *  @productversion Flex 4.5
+     */
+    public function get dataTipFormatter():IFormatter
+    {
+        if (dataTipFormatterStyleParentInvalid && grid)
+        {
+            const asc:IAdvancedStyleClient = _dataTipFormatter as IAdvancedStyleClient;
+            if (asc && (asc.styleParent != grid))
+                grid.addStyleClient(asc);            
+            dataTipFormatterStyleParentInvalid = false;
+        }
+        
+        return _dataTipFormatter;
+    }
+    
+    /**
+     *  @private
+     */
+    public function set dataTipFormatter(value:IFormatter):void
+    {
+        if (_dataTipFormatter == value)
+            return;
+        
+        if (grid && _dataTipFormatter)
+        {
+            const oldASC:IAdvancedStyleClient = _dataTipFormatter as IAdvancedStyleClient;
+            if (oldASC && (oldASC.styleParent == grid))
+                grid.removeStyleClient(oldASC);
+        }        
+        
+        _dataTipFormatter = value;
+        dataTipFormatterStyleParentInvalid = true;
+        
+        if (grid)
+            grid.invalidateDisplayList();
+        
+        dispatchChangeEvent("dataTipFormatterChanged");
+    }
+    
+    
+    //----------------------------------
     //  dataTipFunction
     //----------------------------------
     

     */
    public function itemToLabel(item:Object):String
    {
        return GridColumn.itemToString(item, dataFieldPath, labelFunction, this);
    }

    /**

import mx.events.CollectionEvent;
import mx.events.CollectionEventKind;
import mx.events.PropertyChangeEvent;
import mx.formatters.IFormatter;
import mx.styles.IAdvancedStyleClient;
import mx.utils.ObjectUtil;

import spark.collections.SortField;
