有誰知道爲什麼,雖然它被調用的控制將永遠不會委託工作?無論我是否進行步調試,它都不會到達那裏。委託不使用C#
public void UpdateClock()
{
//control never gets here
}
delegate void UpdateClockDelegate();
private void MT_TimerTick(object source, ElapsedEventArgs e)
{
if (InvokeRequired)
{
//control gets here, but does not invoke, apparently
Invoke(new UpdateClockDelegate(UpdateClock));
}
}
我按照以下 link
是否已啓用定時器? – 2013-04-23 07:56:39
應該是調試器到達那裏。 (Tick事件被觸發) – jAC 2013-04-23 07:58:27
UI可能被阻止?當你調用'Invoke()'時,它會在後臺嚮應用程序的消息隊列發送消息,消息隊列必須由控制消息泵處理。如果UI當前被阻止,則不會處理該消息並且該方法不會被調用。 – 2013-04-23 07:58:55