This worked for me using a flat table.
private void button1_Click(object sender, System.EventArgs e)
{
GridTableControl tc = this.gridGroupingControl1.TableControl;
foreach(GridRangeInfo range in tc.Selections.Ranges)
{
GridRangeInfo range1 = range.ExpandRange(1, 1, tc.Model.RowCount, tc.Model.ColCount);
for(int row = range1.Top; row <= range1.Bottom; ++row)
{
GridTableCellStyleInfo style = tc.Model[row, range1.Left];
if(style.TableCellIdentity.DisplayElement != null
&& style.TableCellIdentity.DisplayElement.ParentRecord != null)
{
DataRowView drv = style.TableCellIdentity.DisplayElement.ParentRecord.GetData() as DataRowView;
if(drv != null)
{
Console.WriteLine("{0} {1} {2} {3}", drv[0], drv[1], drv[2], drv[3]);
}
}
}
}
}