从列表框中删除项目

时间:2012-09-14 00:11:13

标签: vb.net visual-studio-2010 listbox

好的,我无法循环浏览项目列表框并根据filesystemwatcher删除它们。

用户在文本框中输入数值,然后将其添加到列表框中。

Listbox1.Items.Add(Textbox1.Text)

这里我是如何循环浏览列表框项目并触发msgbox进行测试的。

Public Sub CheckCreatedPDFs()
    For i As Integer = 0 To ListBox1.Items.Count - 1
        Dim Watcher As New FileSystemWatcher()
        Watcher.Path = "C:\Temp\"
        Watcher.NotifyFilter = (NotifyFilters.Attributes)
        Watcher.Filter = ListBox1.Items(i) + ".pdf"

        AddHandler Watcher.Changed, AddressOf OnChanged

        Watcher.EnableRaisingEvents = True
    Next i

End Sub

Private Sub OnChanged(source As Object, e As FileSystemEventArgs)
    ' Specify what is done when a file is created.
    MsgBox("SPACE RESERVED FOR REMOVING LISTBOX ITEMS")
End Sub

有关如何删除这些项目的任何建议?谢谢!

1 个答案:

答案 0 :(得分:1)

存储ListBox1.Items.IndexOf(e.Name)的回复。如果它大于-1,请使用ListBox1.Items.RemoveAt(SavedIndex)。我没有使用VB.Net,因此我无法提供确切的代码。

在C#中,它会是这样的:

private void OnChanged(object Sender, FileSystemEventArgs e)
{
    var Idx = listbox1.Items.IndexOf(e.Name);
    if (Idx > -1) 
    {
      listbox1.Items.RemoveAt(Idx);
    }
}