【发布时间】:2016-08-01 11:22:33
【问题描述】:
所以我在 Windows 窗体应用程序中使用 C#,我的问题是关于 ListView。我想要做的就是根据值以某种颜色显示 ListViewItem。现在我尝试了传统的方法:
ListViewItem li = new ListViewItem();
li.ForeColor = Color.Green;
li.Text = "Limit: " + wc.getCreditLimit();
listLimits.Items.Add(li);
但我在 ListView 中看到的结果是:
ListViewItem:{Limit:15000}
不,它不是彩色的
我尝试的另一种方法是使用文本作为参数初始化 ListViewItem,如下所示:
ListViewItem li = new ListViewItem("Limit: " + wc.getCreditLimit());
li.ForeColor = Color.Green;
listLimits.Items.Add(li);
但这也会产生与以前相同的结果。
我尝试的另一种方法是添加 ListViewItem 的 Text 属性,如下所示:
ListViewItem li = new ListViewItem("Limit: " + wc.getCreditLimit());
li.ForeColor = Color.Green;
listLimits.Items.Add(li.Text);
现在这会在 ListView 中显示正确的文本,但是它仍然没有着色!
有人可以解释一下这种奇怪的行为吗,因为根据我的阅读,这似乎是向 ListViewItem 添加颜色的唯一方法。任何建议将不胜感激,谢谢。
【问题讨论】:
-
为反对票喝彩……现在,如果有人可以尝试帮助而不是批评,那就太好了!
-
根据this 你做对了。我怀疑是一个常见的用户错误,可能
ListView不在Details模式或其他模式下。至于 “看起来这是向 ListViewItem 添加颜色的唯一方法” 你不正确,还有其他 方法:1)WPF 2)owner drawnListView 3) 第三方组件。
标签: c# winforms colors listviewitem