Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как работать с NumericUpDown из другого потока? 
:(
    Опции темы
dmitry1208197320
Дата 2.2.2010, 14:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 6.9.2009

Репутация: нет
Всего: нет



Помогите, пожалуйста, со следующей ситуацией.
Я использую компонент SerialPort, который генерирует событие DataReceived в отдельном потоке. Мне нужно в этом событии обратится к свойству компонента NumericUpDown->Value, например

NumericUpDown->Value = 10;

Но при попытке выполнить данную строку кода компилятор выдаёт ошибку:
"Additional information: Cross-thread operation not valid: Control '' accessed from a thread other than the thread it was created on."

Я так понимаю, что надо использовать возможности компонента System::Threading для правильного обращения к свойствам потоконебезопасного компонента NumericUpDown.

Можете привести пример корректного обращения к NumericUpDown->Value из другого (неосновного) потока?

PM MAIL   Вверх
KelTron
Дата 2.2.2010, 18:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 745
Регистрация: 8.10.2006
Где: Красноярск

Репутация: 11
Всего: 38



Если обработчик находится в классе формы, на которой нужный компонент, то:
Код

Invoke(new Action(() => this.numericUpDown1.Value = 10));



--------------------
Тысячами незримых нитей обвивает тебя Закон. Разрубишь одну - преступник. Десять - смертник. Все - Бог.
Эвенгар Салладорский, основатель Школы Тьмы.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Partizan
PashaPash

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | .NET для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0674 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.