Combobox与图像 - 将值传递给drawItem事件

时间:2009-01-10 21:02:45

标签: c# combobox

我有一个带有组合框的C#应用​​程序。我以通常的方式添加项目,使用循环遍历一些对象并将每个名称属性值添加到组合框:

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 个答案:

答案 0 :(得分:2)

看起来像DrawItemEventArgs gives you the index。使用该索引索引到comboBox1.Items。