0

是否可以复制选定的列表视图单元格?我知道可以在 datagridview 中做到这一点,但我不确定我们是否可以在 listview 中......例如:

复制红色矩形

Dim s As String = ""

For Each lsvrow As ListViewItem In lwBills.SelectedItems
    s &= lsvrow.Text & ControlChars.NewLine
Next

Clipboard.SetDataObject(s)

这将复制该行的文本(本例中为10133)。子项包括206-0015-04BK-3390,但我当前的示例不会复制子项。我不想复制整行,只复制我右键单击的部分(在本例中为 206-0015-04B

Listview 可以做到这一点吗?

4

1 回答 1

2

这可以使用MouseClick事件和HitTest方法的组合来实现ListView

处理MouseClick事件,然后在事件处理过程中使用HitTest方法查看SubItem鼠标指针在哪个下方,如下:

Private Sub lwBills_Click(sender As System.Object, e As MouseEventArgs) Handles lwBills.MouseClick
    Dim Info As ListViewHitTestInfo
    Dim s As String

    Info = lwBills.HitTest(e.Location)
    s = Info.SubItem.Text
    Clipboard.SetDataObject(s)
End Sub

我假设这lwBills是上面示例中您的 ListView 的名称。

于 2013-03-25T18:08:21.590 回答