Sub OkClicked()
Dim TmpStr As String = "", I As Integer
Dim SStr As String
Dim TheItem As ListViewItem
For I = 0 To LstvMain.CheckedItems.Count - 1
SStr = LstvMain.CheckedItems(I).SubItems(0).Text
TmpStr = TmpStr & "'" & SStr & "'" & ","
Next
If Len(TmpStr) >= 1 Then TmpStr = Mid(TmpStr, 1, Len(TmpStr) - 1)
RltValue = TmpStr : Me.Close()
End Sub
大体思路,尚未实际进行编译,希望能够帮到你
private lv as listview=nothing
Private Sub txtBOX_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles txtBOX.KeyDown
If e.KeyCode = Keys.F12 Then
lv = New ListView()
lv.Location = New System.Drawing.Point(...,...)
lv.Size = New System.Drawing.Size(...,...)
'添加项内容
Me.Controls.Add(lv)
AddHandler lv.KeyDown, AddressOf LV_KeyPressed
lv.show
lv.BringToFront()
End If
End Sub
Private Sub LB_KeyPressed(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs)
If e.KeyCode = Keys.Enter Then
dim i as integer
dim str as string
for i=0 to lv.selecteditems.count-1
str=string.format("{0},'{1}'",str,lv.SelectedItems.Item(i).text)
next
if str.length>1 then
txtBOX.text=str.substring(1)
else
txtBOX.text=""
end if
RemoveHandler lv.KeyDown, AddressOf LV_KeyPressed
lv.Visible = False
lv.Dispose()
lv = Nothing
End If
End Sub
Dim i As Integer
Dim strChk As String
For i = 0 To lv.Items.Count - 1
If lv.Items(i).Checked Then
strChk &= ",'" & lv.Items(i).Text & "'"
End If
Next
strChk = Mid(strChk, 2)