Ты не можешь удалить из коллекции в цикле. Нужно поступать так:
- сначала в цикле ты создаешь список тех строк, которые нужно удалить
- потом в следующем цикле идешь по строкам, которые нужно удалить и удаляешь
Пример:
Не так:
For Each btn As tsButton In Me.tsWindows.Items
If btn.myForm Is frm Then
Me.tsWindows.Items.Remove(btn) 'Здесь будет ошибка потому что удаляешь из коллекции
End If
Next
А вот так:
Dim tmpbtn As tsButton = Nothing
For Each btn As tsButton In Me.tsWindows.Items
If btn.myForm Is frm Then
tmpbtn = btn : Exit For
End If
Next
If tmpbtn IsNot Nothing Then Me.tsWindows.Items.Remove(tmpbtn)
Я думаю из примера смысл понятен
_____________________________________________
Правды как минимум две...