如何突出listview中的项目?

时间:2012-04-30 02:06:43

标签: c# winforms listview highlight

我正在尝试从listView1拖放并放在listLocal 上,这两个都是ListView
它是客户端和服务器之间的文件传输应用程序,应用程序显示小型本地文件资源管理器 listLocal 和远程文件资源管理器 listView1
所以当我从< strong> listView1 到 listLocal ,项目[文件夹]上的指针指针应突出显示item.Selected = true
但是它不起作用,我试图做listLocal.FocuslistLocal.Select仍然无法正常工作,我怎么能让它工作?

注意:当我使用item.BackColor = Color.RoyalBlue;时,它有效,但它没有突出显示图标。

   private void listLocal_DragOver(object sender, DragEventArgs e)
   {
      if (!e.Data.GetDataPresent(typeof(ListViewItem))) return;
      Point p = listLocal.PointToClient(MousePosition);
      ListViewItem targetItem = listLocal.GetItemAt(p.X, p.Y);
      if (targetItem != null)               //if dropping on a target item
      {
        targetItem.Selected = true;
        if (targetItem.SubItems.Count > 1) e.Effect = DragDropEffects.None;//if IsFile
        else e.Effect = DragDropEffects.Copy;
        return;
      }
      foreach (ListViewItem item in listLocal.Items) item.Selected = false; //if dragging into current address
      e.Effect = DragDropEffects.Copy;
    }

2 个答案:

答案 0 :(得分:4)

将HideSelection属性设置为False

答案 1 :(得分:0)

您可以尝试处理DragOver方法。 或者看一下microsoft的例子:MSDN