             if (grid)
                 columnHeaderBar.dataGrid = this;
             
+            columnHeaderBar.addEventListener(GridEvent.GRID_CLICK, columnHeaderBar_clickHandler);
             columnHeaderBar.addEventListener(GridEvent.SEPARATOR_ROLL_OVER, separator_rollOverHandler);
             columnHeaderBar.addEventListener(GridEvent.SEPARATOR_ROLL_OUT, separator_rollOutHandler);
             columnHeaderBar.addEventListener(GridEvent.SEPARATOR_MOUSE_DOWN, separator_mouseDownHandler);

//  Other metadata
//--------------------------------------

[DefaultProperty("dataProvider")]

[DiscouragedForProfile("mobileDevice")]

[IconFile("DataGrid.png")]

//--------------------------------------
//  Other metadata
//--------------------------------------

[AccessibilityClass(implementation="spark.accessibility.DataGridAccImpl")]

/**
 *  TBD(hmuller)

    /**
     *  @private
     */
    protected function columnHeaderBar_clickHandler(event:GridEvent):void
    {
        const column:GridColumn = event.column;
        if (!enabled || !sortableColumns || !column || !column.sortable)
            return;
    
        const columnIndices:Vector.<int> = Vector.<int>([column.columnIndex]);
        
        if (sortByColumns(columnIndices))
            columnHeaderBar.visibleSortIndicatorIndices = columnIndices;
    }
    
    /**
     *  @private
     */
    protected function separator_mouseDownHandler(event:GridEvent):void
    {
        const column:GridColumn = event.column;
