Вы можете попробовать использовать другой GridControl.DataSource был бы следующим простым классом:
class Legend
{
public Legend(string caption, Color color)
{
Caption = caption;
Color = color;
}
public string Caption { get; set; }
public Color Color { get; set; }
}
Вы должны заполнить его при создании списка цветов;Я не знаю ваших настроек, поэтому, например,
gridControl1.DataSource = new List<Legend>
{
new Legend ( "First", Color.AliceBlue),
new Legend ( "Second", Color.Azure),
new Legend ( "Third", Color.Bisque)
};
GridControl будет иметь два столбца, один для цвета и второй для заголовка.Вы должны установить для свойства ColumnEdit первого столбца значение ColorEdit.Чтобы избежать отображения имени цвета, установите свойство ForeColor в AppearanceCell прозрачным.Также установите FixedWidth в OptionsColumn в true и Width в какое-нибудь симпатичное число (32 для моей системы).
Вид должен быть недоступен для редактирования (OptionsBehavior.Editable = false), и фокус не должен использовать свой собственный вид (OptionsSelection.EnableAppearanceFocusedRow =ложный).Кроме того, вы можете скрыть заголовок, скрыть индикаторы строк, запретить GridControl получать фокус и т. Д.
Надеюсь, это поможет, даже если он прибудет на две недели позже.