C # окна формы не обновляются в методе - PullRequest
1 голос
/ 28 мая 2010

Я пытаюсь вызвать код некоторых оконных форм (например, установка label.visible = true в некотором коде события, все компилируется нормально, но форма не реагирует на изменения! В чем может быть проблема?

Проблема в строках:

labelNewCall.Visible = true;
timerNewCall.Enabled = true;

код: http://pastebin.com/gV28PN4P

также другой код не работал, пока я не переупорядочил некоторые из них (порядок не важен, но он не работал в противном случае ...)

Ответы [ 4 ]

1 голос
/ 28 мая 2010

Это может быть связано с тем, что функция обратного вызова soundCapture_BufferThrown не запущена в потоке графического интерфейса. Прочитайте этот пост для более подробной информации о потоках в WinForms.

1 голос
/ 28 мая 2010

Вы также можете попробовать небольшой удобный метод, который вы можете поместить в свой внутренний цикл:

Application.DoEvents();

Вот запись MSDN:

http://msdn.microsoft.com/en-us/library/system.windows.forms.application.doevents.aspx

1 голос
/ 28 мая 2010

Вы вызываете этот метод в другом потоке пользовательского интерфейса? Если это так, вам следует использовать метод Invoke и / или BeginInvoke.

Посмотрите на статью Что случилось с BeginInvoke? .

0 голосов
/ 28 мая 2010

Использование invoke для доступа к объекту в потоке окон / форм управления

Ссылка - http://www.dailycoding.com/...formscontrols_thread.aspx

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...