gpt4 book ai didi

vb.net - 如何从列表框中删除选定的项目

转载 作者:行者123 更新时间:2023-12-05 00:16:22 27 4
gpt4 key购买 nike

这是针对 VS2015 社区中的 VB.NET 4.5 项目。

我试图从列表框中删除某些选定的项目,但前提是选定的项目满足条件。我找到了很多关于如何删除所选项目的示例。但是对于嵌套在循环中遍历所选项目的条件没有任何作用(至少,我无法让示例与我正在尝试做的事情一起工作......)

这是我的代码:

    Dim somecondition As Boolean = True
Dim folder As String
For i As Integer = 0 To lstBoxFoldersBackingUp.SelectedItems.Count - 1

If somecondition = True Then
folder = lstBoxFoldersBackingUp.SelectedItems.Item(i)
Console.WriteLine("folder: " & folder)
lstBoxFoldersBackingUp.SelectedItems.Remove(lstBoxFoldersBackingUp.SelectedItems.Item(i))
End If
Next

控制台输出正确显示当前迭代项的文本,但我无法让 Remove() 工作。就像现在的代码一样,我得到了控制台输出,但列表框没有改变。

最佳答案

删除项目会更改项目的索引位置。有很多方法可以解决这个问题,但是从您的代码中,尝试向后迭代以避免该问题。您还应该从 Items 集合中删除该项目,而不是 SelectedItems 集合:

For i As Integer = lstBoxFoldersBackingUp.SelectedItems.Count - 1 To 0 Step -1
If somecondition = True Then
folder = lstBoxFoldersBackingUp.SelectedItems.Item(i)
Console.WriteLine("folder: " & folder)
lstBoxFoldersBackingUp.Items.Remove(lstBoxFoldersBackingUp.SelectedItems(i))
End If
Next

关于vb.net - 如何从列表框中删除选定的项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41988826/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com