You might try using another GridControl. DataSource would be this simple class:
class Legend
{
public Legend(string caption, Color color)
{
Caption = caption;
Color = color;
}
public string Caption { get; set; }
public Color Color { get; set; }
}
You would populate it while building your color list; I don't know your setup so, for example,
gridControl1.DataSource = new List<Legend>
{
new Legend ( "First", Color.AliceBlue),
new Legend ( "Second", Color.Azure),
new Legend ( "Third", Color.Bisque)
};
GridControl would have two columns, first one for Color and second for Caption. You must set ColumnEdit property of first column to ColorEdit. In order to avoid color name being displayed set AppearanceCell's ForeColor property to transparent. Also set FixedWidth in OptionsColumn to true and Width to some nice number (32 for my system).
View should be uneditable (OptionsBehavior.Editable = false) and focus should not use it's own appearance (OptionsSelection.EnableAppearanceFocusedRow = false). Additionally, you might hide header, hide row indicators, disallow GridControl from receiving focus etc.
I hope this helps, even if it arrives two weeks late.