VB.NET列表框[输入和输出]

VB.NET列表框[输入和输出],vb.net,listbox,time-and-attendance,Vb.net,Listbox,Time And Attendance,我实际上是在使用一个考勤系统,使用listbox我想监控员工是否超时。 txtEmpNum.text作为我的文本框, rdTin作为我的时间单选按钮, rTout作为我的超时单选按钮, lblName、lblDept、lblinout只是标签。我希望,如果一个用户已经在他/她的名字中计时,他/她的名字不会出现在我的列表框中,而是会弹出msgbox。但是在这段代码中,虽然msgbox弹出,但员工的姓名仍然出现在我的列表框中 If txtEmpNum.Text = 8888 Then

我实际上是在使用一个考勤系统,使用listbox我想监控员工是否超时。 txtEmpNum.text作为我的文本框, rdTin作为我的时间单选按钮, rTout作为我的超时单选按钮, lblName、lblDept、lblinout只是标签。我希望,如果一个用户已经在他/她的名字中计时,他/她的名字不会出现在我的列表框中,而是会弹出msgbox。但是在这段代码中,虽然msgbox弹出,但员工的姓名仍然出现在我的列表框中

If txtEmpNum.Text = 8888 Then
        If rdTin.Checked = True Then
            For i As Integer = 0 To listEmp.Items.Count - 1
                If (listEmp.Items(i).ToString.Contains("Bane Lim")) Then
                    MsgBox("String found at " & (i + 1).ToString)
                    Exit For
                End If
            Next
            lblName.Text = "Bane"
            lblDept.Text = "Admin"
            lblinout.Text = "In"
            listEmp.Items.Add("Bane Lim")
            txtEmpNum.Clear()

        ElseIf rdTout.Checked = True Then
            lblName.Text = "Bane"
            lblDept.Text = "Admin"
            lblinout.Text = "Out"
            listEmp.Items.Remove("Bane Lim")
            txtEmpNum.Clear()
        End If

问题是这个名字第二次出现了吗?您将要退出子函数或退出函数,而不是退出。Exit For是将其从循环中踢出,但继续执行要再次添加的剩余代码

否则,在其中添加一个标志,如:

    If txtEmpNum.Text = 8888 Then
        If rdTin.Checked = True Then
            Dim bolFound As Boolean = False
            For i As Integer = 0 To listEmp.Items.Count - 1
                If (listEmp.Items(i).ToString.Contains("Bane Lim")) Then
                    MsgBox("String found at " & (i + 1).ToString)
                    bolFound = True
                    Exit For
                End If
            Next
            If Not bolFound Then
                lblName.Text = "Bane"
                lblDept.Text = "Admin"
                lblinout.Text = "In"
                listEmp.Items.Add("Bane Lim")
                txtEmpNum.Clear()
            End If


        ElseIf rdTout.Checked = True Then
            lblName.Text = "Bane"
            lblDept.Text = "Admin"
            lblinout.Text = "Out"
            listEmp.Items.Remove("Bane Lim")
            txtEmpNum.Clear()
        End If

在显示MsgBox的同一代码块中,还将Bane Lim添加到列表中。我错过什么了吗?