... Когда я смотрю его через отладчик, он просто переходит к "End Sub" ...
Обратите внимание, что thread1.Start()
не заблокирует текущий поток,
Установка CheckForIllegalCrossThreadCalls
в False
ничего не будет делать, но игнорирует исключение (я), которые выбрасываются при доступе к свойствам элемента управления, принадлежащего потоку пользовательского интерфейса - что также является вашей проблемой:
- Вы создаете новый поток
- Новый поток вызывает
getSecurityStuff
- Вы пытаетесь объявить новый
clsSecurityView
с cmbTickerEntry.Text
в качестве параметра. - EXCEPTION - вы пытаетесь получить доступ к элементу управления, принадлежащему потоку пользовательского интерфейса, находясь в другом потоке!
- Никаких исключений не появляется, поскольку вы установили
CheckForIllegalCrossThreadCalls
в False
То же самое с fillData
... при попытке доступа к элементам управления вне потока пользовательского интерфейса.
Решение: Используйте Invoke
/ BeginInvoke
для выполнениякод, который должен читать / изменять свойства элементов управления, принадлежащих потоку пользовательского интерфейса.