请各位高手回答!ListView复选框的问题!高分相送

gwhong211 2003-09-29 12:29:22
在VB.NET中
我想在TxtBOX中按下F12键响应事件并弹出ListView 复选对话框.
请问如何获取ListView 中被选中的项,用单引号''括住,并用逗号隔开,付给TxtBOX呢?在线等.
MSN:
gwhong21th@hotmail.com
...全文
50 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
RHKylix 2003-09-30
  • 打赏
  • 举报
回复
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
listart 2003-09-29
  • 打赏
  • 举报
回复
大体思路,尚未实际进行编译,希望能够帮到你
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

jiandanyu 2003-09-29
  • 打赏
  • 举报
回复
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)

16,553

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧