Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vb.net 在组合框中检查重复项_Vb.net - Fatal编程技术网

Vb.net 在组合框中检查重复项

Vb.net 在组合框中检查重复项,vb.net,Vb.net,我试图让我的代码在组合框中检查重复项 这是我的代码,但我不确定哪里出错了 Private Sub flavorsComboBox_RegionChanged(sender As Object, e As EventArgs) Handles Me.Load flavorsComboBox.Items.Add("Chocolate Almond") flavorsComboBox.Items.Add("Espresso Roast") flavorsComboBox.Ite

我试图让我的代码在组合框中检查重复项

这是我的代码,但我不确定哪里出错了

Private Sub flavorsComboBox_RegionChanged(sender As Object, e As EventArgs) Handles Me.Load
    flavorsComboBox.Items.Add("Chocolate Almond")
    flavorsComboBox.Items.Add("Espresso Roast")
    flavorsComboBox.Items.Add("Jamaica Blue Mountain")
    flavorsComboBox.Items.Add("Kona Blend")
    flavorsComboBox.Items.Add("Vanilla Hazelnut")
End Sub

Private Sub addButton_Click(sender As Object, e As EventArgs) Handles addButton.Click
    Dim i As Integer = 0
    Dim flavorlist As Integer = flavorsComboBox.Items.Count
    Dim flavors As Integer = CInt(flavorsComboBox.Text)
    Do While (i < flavorlist - 1)
        If (flavorsComboBox.Items(i) = flavorlist) Then
            MessageBox.Show("Error!")
        End If
        i += 1
    Loop
Private Sub-flavorsCompobox\u RegionChanged(发送者作为对象,e作为事件参数)处理我。加载
香精巧克力盒。物品。添加(“巧克力杏仁”)
香精巧克力盒。项目。添加(“意式咖啡烤”)
香料盒子。物品。添加(“牙买加蓝山”)
调味品mbobox.Items.Add(“Kona Blend”)
香精巧克力盒。项目。添加(“香草榛子”)
端接头
私有子addButton\u单击(发送者作为对象,e作为事件参数)处理addButton。单击
尺寸i为整数=0
Dim-flavorlist为整数=flavorsComboBox.Items.Count
Dim flavors As Integer=CInt(flavorsComboBox.Text)
边做边做(i
while循环的界限是错误的,括号使用的是不寻常的,我认为您在这条线上的某个地方混淆了变量

以下内容将以更具可读性的方式在集合上迭代:

Dim newflavor As string = flavorsComboBox.Text
for each flavor as string in flavorsComboBox.Items
    If flavor = newflavor Then
        MessageBox.Show("Error!")
    End If
next

但是,您可能需要在等式运算符的两侧使用.ToLower。

是否可以在do-While或do-Until循环中执行此操作?请避免使用
val1.ToLower()=val2.ToLower()
,而应使用
String.Compare(val1,val2,True)=0
-它对区域性敏感且效率更高,请使用
选项,总是。这将指出
Do While
循环中
If
语句中的一个错误。您正在将组合框中的对象与整数(组合框中的项目数)进行比较。仔细检查变量,确保它们实际上包含了您想要比较的内容。此外,初始化并设置
变量的行将抛出一个错误,因为您正在获取文本并将其转换为整数,这并不总是有效的。