gpt4 book ai didi

vb.net - ListView右键单击VB.Net

转载 作者:行者123 更新时间:2023-12-01 08:38:54 24 4
gpt4 key购买 nike

所以我有我的代码,它有点工作......当我右键单击时它在 ListView 上显示上下文菜单,但我认为选择案例不起作用,当我单击编辑或删除时,什么都没发生。这是我的代码

Private Sub Form1_Load(sender As Object, e As EventArgs) Handles Me.Load
ComboBox1.SelectedItem = "TRUE"
Dim ctx As New ContextMenu

Dim i1 As New MenuItem("&Edit")
Dim i2 As New MenuItem("&Delete")

AddHandler i1.Click, AddressOf ContextMenuHandler
AddHandler i2.Click, AddressOf ContextMenuHandler

ctx.MenuItems.Add(i1)
ctx.MenuItems.Add(i2)

Me.ListView1.ContextMenu = ctx
End Sub

Private Sub ContextMenuHandler(ByVal Sender As Object, ByVal e As EventArgs)
Dim mi As MenuItem = DirectCast(sender, MenuItem)

Select Case mi.Text.ToLower()
Case "edit"
ListViewToText()
Case "delete"
Try
If ListView1.SelectedItems.Count > 0 Then
ListView1.Items.Remove(ListView1.SelectedItems(0))
End If
Catch ex As Exception

End Try
End Select
End Sub

谢谢!

最佳答案

Select Case block 不起作用,因为文本是 "&edit""&delete"& 将作为 Text 属性的一部分出现。

请注意,如果您要为每个单击的项目自定义 ContextMenuHanndler 函数,那么更好的策略是为每个项目设置不同的处理程序

AddHandler i1.Click, AddressOf EditHandler
AddHandler i2.Click, AddressOf DeleteHandler

Private Sub EditHandler(ByVal Sender As Object, ByVal e As EventArgs)
ListViewToText()
End Sub

Private Sub DeleteHandler(ByVal Sender As Object, ByVal e As EventArgs)
Try
If ListView1.SelectedItems.Count > 0 Then
ListView1.Items.Remove(ListView1.SelectedItems(0))
End If
Catch ex As Exception

End Try
End Sub

关于vb.net - ListView右键单击VB.Net,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21690661/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com