c# listbox 颜色
时间: 2023-10-10 21:11:01 浏览: 109
要给 C# 中的 ListBox 控件中的项设置颜色,可以使用 ListBox 的 DrawItem 事件和 DrawMode 属性。首先,将 DrawMode 属性设置为 OwnerDrawFixed,然后在 DrawItem 事件中添加代码来设置每个项的颜色。以下是一个示例:
```c#
private void listBox1_DrawItem(object sender, DrawItemEventArgs e)
{
e.DrawBackground();
Brush myBrush = Brushes.Black;
switch (e.Index % 3)
{
case 0:
myBrush = Brushes.Red;
break;
case 1:
myBrush = Brushes.Blue;
break;
case 2:
myBrush = Brushes.Green;
break;
}
e.Graphics.DrawString(listBox1.Items[e.Index].ToString(), e.Font, myBrush, e.Bounds, StringFormat.GenericDefault);
e.DrawFocusRectangle();
}
```
这个示例中,我们将 ListBox 的 DrawMode 属性设置为 OwnerDrawFixed,然后在 DrawItem 事件中使用 e.Index 属性来确定当前项的索引,并根据需要设置不同的颜色。在绘制完成后,我们还需要调用 e.DrawFocusRectangle() 方法来绘制选择项的焦点矩形。
在这个示例中,我们使用了三种不同的颜色:红色、蓝色和绿色。你可以根据需要修改代码来设置不同的颜色或者根据你的需求进行更多的自定义。
阅读全文