Невозможно установить поставщика ошибок в потоках - PullRequest
0 голосов
/ 09 июля 2020

Я использовал errorprovider в форме VB. Net windows, которая работала нормально. Как я заметил, если я пытаюсь установить метод errorprovider seterror в процедуре, которая была вызвана через потоки, поставщик ошибок не работает.

Что-то мне не хватает при запуске потока?

Мой код:

Dim thrdd1 As New Thread(AddressOf random_procedure)
thrdd1.IsBackground = True
thrdd1.Start()

Privavte Sub random_procedure()

    *do some events*

    seterrorprovider()

End Sub

Private sub seterrorprovider()

    errorpro1.seterror(textbox1,"Unable to load")

End Sub

Ответы [ 2 ]

0 голосов
/ 10 июля 2020

Обнаружил проблему, это был просто еще один незаконный перекрестный вызов. Не удалось отследить это, потому что я установил для него значение false в загрузке формы. Сделал подпрограмму с вызовом для изменения текста основного потока пользовательского интерфейса. Спасибо всем, кто пытался помочь

0 голосов
/ 09 июля 2020
Public Sub New()

    ' This call is required by the designer。
    InitializeComponent()

    ' Add any initialization after the InitializeComponent() call。
    CheckForIllegalCrossThreadCalls = False

End Sub

Добавьте этот код в форму пользовательского интерфейса, возможно, решите вашу проблему.

...