我正在使用标准的.NET ListView,我想在View = LargeIcon设置中设置背景颜色。当我设置ListViewItem.BackgroundColor时,只设置文本背景。
答案 0 :(得分:1)
我知道这已经晚了几天,但如果你仍然在解决问题之后,我找到了一些可能有用的东西。我在查看this answer后找到了解决方案。
您需要派生自己的ListView控件版本并添加一些自定义绘图,但这不会产生太多额外代码:
public class MyListView : ListView
{
public MyListView()
: base()
{
OwnerDraw = true;
DrawItem += MyListView_DrawItem;
}
private void MyListView_DrawItem(object sender, DrawListViewItemEventArgs e)
{
using (SolidBrush itemBrush = new SolidBrush(e.Item.BackColor))
{
e.Graphics.FillRectangle(itemBrush, e.Item.Bounds);
}
e.DrawDefault = true;
}
}
我在新表单上使用了这个新控件,我使用设计器添加了2个项目,并将项目的背景颜色设置为“Gold”。结果如下: