ListView C#(.Net 3.5)中的替代颜色?
Posted
技术标签:
【中文标题】ListView C#(.Net 3.5)中的替代颜色?【英文标题】:Alternate Color in ListView C# (.Net 3.5)? 【发布时间】:2011-04-29 16:42:50 【问题描述】:我将为我的 ListView 行设置另一种颜色。 我看到了this link,但我使用的是 .Net Framework 3.5 SP1,所以我不能使用它。 我使用了以下代码,但 ListView 排序有问题
ListViewItem newListViewItem = new ListViewItem(
new string[] item.name.ToString(),
item.code.ToString() );
newListViewItem.BackColor = new Color(240,240,240);
newListViewItem.UseItemStyleForSubItems = true;
newListViewItem.Font = new Font("Tahoma", 9);
listView1.Items.Add(newListViewItem);
你能指导我怎么做吗?
【问题讨论】:
【参考方案1】:这是一个简单的方法 -> Alternate background
【讨论】:
该链接是 WPF 的,我想在 WinForms 中。【参考方案2】:从你的 sn-p 中很不清楚,但我猜你想要交替颜色。偶数项目以一种方式着色,奇数项目以另一种方式着色。是的,当视图中有大量列时,作为阅读指南非常有效。
是的,当您对项目进行分类时,这会被搞砸。排序后,您需要一个简单的 for 循环来更改 BackColor 属性。
private static void recolorListItems(ListView lv)
for (int ix = 0; ix < lv.Items.Count; ++ix)
var item = lv.Items[ix];
item.BackColor = (ix % 2 == 0) ? Color.Beige : Color.White;
排序后调用它。或者在填充 ListView 之后。我不喜欢颜色,请选择你自己的。
【讨论】:
以上是关于ListView C#(.Net 3.5)中的替代颜色?的主要内容,如果未能解决你的问题,请参考以下文章
asp.net(C#)怎样将listview中的radiobutton设置成互斥?
.NET 3.5 中 ExpandoObject 的替代品,开销最小
.NET 3.5 以外的任何东西都不能在 c# 项目中命中断点
C# 3 个新功能帖子(而不是关于 .Net 3.5 功能)[关闭]