如何避免在VB中的Combobox中添加重复的项目?

问题描述:

我的窗体上有一个组合框,供用户在下拉框中选择项目,也允许他们输入自己的输入。我需要用户添加项目到组合框没有添加已经显示的重复项目。如何避免在VB中的Combobox中添加重复的项目?

例如: 组合框有一个狗品种列表,如(帕格,拳击手,pitbull)。那么,如何在用户输入组合框时输入“pug”呢?

我在Visual Basic中编码, 谢谢!!!!

+0

通过combobox.items循环查看该值是否已经在其中 –

+0

因此,如果不重复该值,我将不允许用户输入所述值,我需要抛出一个异常来阻止它被添加。 – MattC

+0

提供一些正在使用的代码可能会帮助您协助您 – nomistic

我试过了。这工作。

而我只是假设你想要例外重复值进入。以下是代码,它位于Combobox1.Validating事件中。

Private Sub ComboBox1_Validating(sender As Object, e As System.ComponentModel.CancelEventArgs) Handles ComboBox1.Validating 
     For Each item As String In ComboBox1.Items 
      If item.ToLower.Contains(ComboBox1.Text.ToLower) Then 
       MsgBox("Duplicate value: there's already '" & item & "' in the list. Please select from the list.", MsgBoxStyle.Exclamation, "Dog Breed") 
       ComboBox1.Text = "" 
       Exit For 
      End If 
     Next 
    End Sub 

更多有关验证事件,寻找自己。谢谢!

+0

是的,这正是我所寻找的;它工作完美。感谢您的协助! – MattC

+0

@MATC:好的。没问题。 – Tops