如何删除列表框中的重复项 VB.net

How to remove duplicates in a listbox VB.net

我正在尝试删除由查询拉取填充的 ListBox 中的重复项。我使用此代码来防止在 VB 6.0 中添加重复项,但在转换为 VB.net 时不起作用。是否有替代方法来防止或删除重复项。

colSchema = dr("Col_Schema").ToString
If Not lstSchema.Items.ToString.Contains(colSchema) Then
     lstSchema.Items.Add(New ListItem(colSchema))
End If

这段代码

lstSchema.Items.ToString

正在将 Items 转换为字符串。 Items 很可能是 ListBox.ObjectCollection 类型(如果这是 WinForms)或其他 UI 框架的类似集合类型。在这样的 classes 上调用 ToString 将最终调用 Object.ToString,这只是 returns class.

的名称

相反,尝试

lstSchema.Items.Contains(colSchema)

如果由于某种原因这不起作用,请更新您的问题,准确说明您通过调用 ToString 试图解决的问题。

尝试

colSchema = dr("Col_Schema").ToString
dim exists as boolean = false
for i as integer = 0 to lstSchema.items.count - 1
if lstSchema.items.item(i) = colSchema then
exists = true
end if
next
if exists = false then
lstSchema.Items.Add(New ListItem(colSchema))
end if