For me, I could not get TableControlCellDoubleClick to be raised on header cells. I might have differernt properties set than you do.
But I was able to use TableControlMouseDown and look for 2 leftclicks. In that event, you can test for a header row and get teh column clicked using code like:
private void gridGroupingControl1_TableControlMouseDown(object sender, GridTableControlMouseEventArgs e)
{
if(e.Inner.Clicks == 2 && e.Inner.Button == MouseButtons.Left)
{
int row, col;
Point pt = new Point(e.Inner.X, e.Inner.Y);
if(e.TableControl.PointToRowCol(pt, out row, out col))
{
GridColumnHeaderRow headerRow = e.TableControl.Table.DisplayElements[row] as GridColumnHeaderRow;
if(headerRow != null)
{
int pos = e.TableControl.TableDescriptor.ColIndexToField(col);
string colName = e.TableControl.TableDescriptor.VisibleColumns[pos].Name;
Console.WriteLine(colName);
}
}
}
}