我正在使用winform,我在列表框中显示了几个id。
用户还有3个按钮,通过这些按钮可以指定如何处理此ID。
我想要实现的是,当用户选择特定的列表框项目并且接下来点击specfic按钮时,它还将改变该项目的背景或字体颜色。当然每个按钮都有自己的颜色。
public List<string> listaUslugJednorazowych = new List<string>();
public notFoundsForm(List<string> notFoundList)
{
InitializeComponent();
listBox1.DataSource = notFoundList;
}
private void button1_Click(object sender, EventArgs e)
{
listaUslugJednorazowych.Add(listBox1.SelectedItem.ToString());
listBox1.DrawMode = DrawMode.OwnerDrawFixed;
listBox1.DrawItem += new DrawItemEventHandler(listBox_DrawItem);
}
void listBox_DrawItem(object sender, DrawItemEventArgs e)
{
if(e.Index == listBox1.SelectedIndex)
{
e.Graphics.FillRectangle(Brushes.Red, e.Bounds);
}
if (e.Index > -1)
{
using (Brush textBrush = new SolidBrush(e.ForeColor))
{
e.Graphics.DrawString(listBox1.Items[e.Index].ToString(), e.Font, textBrush, e.Bounds.Location);
}
}
}
上面的代码是我从谷歌的几个小窍门指示,但仍然不是我想要的东西。
我该如何做到这一点?现在我想通过button_1点击改变颜色。