WindowsForm列表框绘制项

时间:2016-09-28 08:43:25

标签: c# winforms graphics listbox

我正在尝试更改列表框中的speicifc项目的颜色。这是我正在使用的代码。问题是列表框中的所有项目都具有相同的颜色和相同的文本。我无法弄清楚我做错了什么。

 private void button1_Click(object sender, EventArgs e)
 {
     lbPossibleChildren.DrawMode = DrawMode.OwnerDrawFixed;
     lbPossibleChildren.DrawItem += new DrawItemEventHandler(lbDraw);
 }
 private void lbDraw(object sender, DrawItemEventArgs e)
 {
     e.DrawBackground();
     Graphics g = e.Graphics;
     g.FillRectangle(new SolidBrush(Color.Orange), e.Bounds);
     g.DrawString(lbPossibleChildren.Items[3].ToString(), e.Font, new SolidBrush(e.ForeColor), new PointF(e.Bounds.X, e.Bounds.Y));
     e.DrawFocusRectangle();
 }

ScreenShot of the result

1 个答案:

答案 0 :(得分:1)

您可以将listbox添加到listview,以便更改项目颜色。

listView1.Items[1].BackColor = Color.Green;