Re: WinForms и многопоточные приложения
От: GlebZ Россия  
Дата: 22.10.10 08:49
Оценка: 7 (2) +1
Здравствуйте, Аноним, Вы писали:

А>сейчас, для обращения к элементам формы, для каждой функции приходится создавать прокси-функцию с проверкой InvokeRequired и вызовом Invoke.

А>самое утомительное в данном случае — необходимость объявлять делегаты для каждой функции, со временем их накапливается столько, что рябит в глазах.

А>существует ли более лаконичный способ?

Сделать набор чего-то типа

public static class MyControlInvoker
{
     public void Invoke(this Control ctrl, Action act)
     {
          if (ctrl.InvokeRequired)
             ctrl.Invoke(act);
          act();
     }
....
}
//using
мyForm.Invoke(()=>MessageBox.Show(msg));
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.