         invalidateDisplayList();
         dispatchChangeEvent("columnSeparatorChanged");
     }
+    
+    //----------------------------------
+    //  dataGrid
+    //----------------------------------
+    
+    [Bindable("dataGridChanged")]
+    
+    private var _dataGrid:DataGrid = null;
+    
+    /**
+     *  The DataGrid that defines the column layout and horizontal scroll position for this component.
+     *  This property is set by the DataGrid after its grid skin part has been added.
+     * 
+     *  @default null
+     * 
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 1.5
+     *  @productversion Flex 4.5
+     */
+    public function get dataGrid():DataGrid
+    {
+        return _dataGrid;
+    }
+    
+    /**
+     *  @private
+     */
+    public function set dataGrid(value:DataGrid):void
+    {
+        if (_dataGrid == value)
+            return;
+        
+        if (_dataGrid && _dataGrid.grid)
+            _dataGrid.grid.removeEventListener(PropertyChangeEvent.PROPERTY_CHANGE, grid_changeEventHandler);
+
+        _dataGrid = value;
+        
+        if (_dataGrid && _dataGrid.grid)
+            _dataGrid.grid.addEventListener(PropertyChangeEvent.PROPERTY_CHANGE, grid_changeEventHandler);
+        
+        layout.clearVirtualLayoutCache();
+        invalidateSize();
+        invalidateDisplayList();
+        
+        dispatchChangeEvent("dataGridChanged");
+    }
+    
+    /**
+     *  @private
+     */
+    private function grid_changeEventHandler(event:PropertyChangeEvent):void
+    {
+        if (event.property == "horizontalScrollPosition")
+            horizontalScrollPosition = Number(event.newValue);
+    }        
     
     //----------------------------------
     //  overlayGroup

[IconFile("ColumnHeaderBar.png")]

/**
 *  The ColumnHeaderBar control defines
 * 
 *  @langversion 3.0
 *  @playerversion Flash 10
 *  @playerversion AIR 2.0
 *  @productversion Flex 4.5
 */
public class ColumnHeaderBar extends Group implements IFocusManagerComponent 
{
    include "../core/Version.as";
    

import mx.core.IFactory;
import mx.core.IVisualElement;
import mx.core.mx_internal;
import mx.events.PropertyChangeEvent;
import mx.managers.CursorManager;
import mx.managers.CursorManagerPriority;
import mx.managers.IFocusManagerComponent;

import spark.components.gridClasses.IDataGridElement;
import spark.components.supportClasses.ColumnHeaderBarLayout;
import spark.components.supportClasses.GridColumn;
import spark.components.supportClasses.GridLayer;
