@Zulkund

Как в C# избежать исключения InvalidOperationException?

Добрый день! Столкнулся с такой проблемой. В основном потоке открываю дочерний в котором идет работа с объектом формы(progressBar). Выскакивает исключение:
Дополнительные сведения: Недопустимая операция в нескольких потоках: попытка доступа к элементу управления 'pB1' не из того потока, в котором он был создан. Как это можно избежать? Переносить работу с потоком из формы не вариант. Заранее спасибо!
  • Вопрос задан
  • 1845 просмотров
Решения вопроса 1
petermzg
@petermzg
Самый лучший программист
С элементами формы работа возможна только из потока в котором они созданы.
Хотите обновлять progressBar, передавайте значение из своего вспомогательного потока в основной и он уже обновит progressBar
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
Dispatcher должен решить проблему
Ответ написан
Комментировать
AnnTHony
@AnnTHony
Интроверт
Через механизм событий наверно тоже может получится.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы