我正在使用ListBox
来显示某些值,它可以正常工作但是当我尝试从列表框中获取所选项时,它会显示错误的空引用错误。
以下是我为从ListBox获取值而编写的代码:
For i As Integer = 0 To lsttasks.SelectedItems.Count - 1
userTaskDtlSrNo = Val(lsttasks.SelectedItems(i).ToString())
If userTaskDtlSrNos <> "" Then userTaskDtlSrNos &= ","
userTaskDtlSrNos &= userTaskDtlSrNo
Next
有谁能告诉我这段代码有什么问题?
答案 0 :(得分:4)
您不需要那里的Val()
功能
不要忘记声明Dim userTaskDtlSrNo as String
使用:userTaskDtlSrNo = lsttasks.SelectedItems(i).ToString()
答案 1 :(得分:2)
我相信你将字符串赋值为整数, 将userTaskDtlSrNo声明为String,然后使用
userTaskDtlSrNo = Val(lsttasks.SelectedItems(i).ToString())
如果您需要将userTaskDtlSNo更改为整数,那么只需使用
Dim intUserTask As Integer
Integer.TryParse(userTaskDtlSrNo, intUserTask)
分配一个与整数相同的新变量,我不知道你的其余代码,但我没有理由说这不能解决你的问题。 : - )
答案 2 :(得分:0)
这比看起来容易。
如果要删除所选的对象:
'let recips be the listbox name
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
Recips.Items.Remove(Recips.SelectedItem)
End Sub
如果您想获取所选项目(例如将其设置为字符串):
'let pie be a string variable, and recips to be the listbox again respectively
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
pie = Recips.selectedItem
End Sub
我希望这对你来说已经足够了,我不确定我是否覆盖了足够的信息。如果我忘了,请评论。如果这有帮助,请接受这个答案。