Combobox с изображением - передача значения в событие drawItem - PullRequest
1 голос
/ 11 января 2009

У меня есть приложение на C # со списком. Я добавил элементы к нему обычным способом, используя цикл для циклического перебора некоторых объектов и добавления каждого значения свойства name в выпадающий список:

comboBox1.Items.Add(object.name);

Но затем я решил, что хочу отображать изображение по тексту, поэтому я изменил drawMode и dropDownStyle и установил обработчик событий в drawItem, чтобы сначала нарисовать изображение, а затем текст.

Изображение отображается правильно, а затем возникает проблема. Я использую что-то вроде

 e.Graphics.DrawString("What goes here?", e.Font, new SolidBrush(e.ForeColor), e.Bounds.Left,e.Bounds.Top);

Я не могу получить значение object.name в параметре DrawString. Имеет ли объект DrawItemEventArgs e значение, и если да, то как мне получить к нему доступ?

Если это не так, каковы мои реальные варианты? Мне показалось несколько примеров, которые поддерживают список для хранения значений, а затем ссылаются на это с помощью e.Index. Это действительно лучший способ?

Заранее спасибо

1 Ответ

2 голосов
/ 11 января 2009

Похоже, DrawItemEventArgs дает вам индекс . Используйте этот индекс для индексации в comboBox1.Items.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...