Для текущего проекта мне нужно было выпадающее меню с названиями цветов (строки) с небольшим примером квадрата цвета рядом с ним (изображение).Итак, я смог разработать собственный ComboBox для достижения этой цели.Тем не менее, у меня есть одна проблема .... когда я выбираю элемент из списка, пример цвета не отображается, только имя цвета.(См. Примеры ниже)
Расширенное меню:
После выбора элемента:
ВЧтобы нарисовать цвета рядом со строками, для начала я использовал:
// Draws the items into the ColorSelector object
protected override void OnDrawItem(DrawItemEventArgs e)
{
e.DrawBackground();
e.DrawFocusRectangle();
DropDownItem item = (DropDownItem)Items[e.Index];
// Draw the colored 16 x 16 square
e.Graphics.DrawImage(item.Image, e.Bounds.Left, e.Bounds.Top);
// Draw the value (in this case, the color name)
e.Graphics.DrawString(item.Value, e.Font, new
SolidBrush(e.ForeColor), e.Bounds.Left + item.Image.Width, e.Bounds.Top + 2);
base.OnDrawItem(e);
}
Где DropDownItem содержал изображение и строку для рисования.Итак ... кто-нибудь знает, что мне нужно переопределить или что мне нужно сделать, чтобы ComboBox рисовал изображение и строку, так же, как это уже происходит при расширении списка, когда выбран элемент?
Большое спасибо;Ура!