【问题标题】:Two listviews with highlighted selected items两个带有突出显示的选定项目的列表视图
【发布时间】:2014-02-04 12:06:32
【问题描述】:

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

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 个列表视图,用户首先使用一个(第二个列表视图),之后用户使用第一个列表视图。现在我需要在用户时突出显示第二个列表视图中的选定项目正在第一个列表视图中工作。

【问题讨论】:

  • Chooses columns from listview1 有点混乱。你能否让你的问题更清楚一点(就像真的,删除所有文本并在告诉你现在拥有什么以及你想要拥有什么之后再次输入你的问题)?屏幕截图会令人惊叹。

标签: c# winforms listview


【解决方案1】:

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

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

【讨论】:

    猜你喜欢
    • 2013-10-26
    • 1970-01-01
    • 2013-12-22
    • 1970-01-01
    • 1970-01-01
    • 2012-06-10
    • 1970-01-01
    • 2012-02-02
    • 1970-01-01
    相关资源
    最近更新 更多