两个列表视图,突出显示所选项目

时间:2014-02-04 12:06:33

标签: c# winforms listview

我的listviews中突出显示的项目的背景颜色遇到了问题。 默认情况下它是白灰色的,这很糟糕,因为很难发现。 所以,我写了一个小代码:

private void lv1_SelectedIndexChanged(object sender, EventArgs e)
{
   if (lv2.HasSelected())
   {
       foreach (ListViewItem item in lv2.SelectedItems)
       {
           item.BackColor = Color.Red;
           item.ForeColor = Color.Red;
       }
   }
}

当然我在listview1和listview2中将HideSelection选项设置为false。 仅当选择了listview2时,此代码才会更改项目的背景颜色,但是当用户从listview1中选择列时,我需要执行此操作。有人能帮助我吗?

编辑: 我错过了一些细节 - 所以,我有2个列表视图,用户首先使用一个(第二个列表视图),然后用户正在使用第一个listview.Now我需要突出显示第二个列表视图中的选定项目正在第一个listview中工作。

1 个答案:

答案 0 :(得分:1)

ListView上,如果选择了某行,则会忽略BackColorForeColor。选定的行始终使用当前系统主题指定的颜色。

如果您希望能够指定所选行的颜色,则必须使用ObjectListView或商业ListView类型控件。