2009-02-27 17 views
5

我發現這個代碼:.net中的Invoke()有什麼用?

this.Invoke(new EventHandler(EventGetSum)); 

這是不一樣的文字:

EventGetSum(); 

什麼用的呢?

+0

這是一個非常不好的標題,也許你應該考慮將它改爲更具描述性的東西 – grapefrukt 2009-02-27 10:56:23

回答

13

如果你寫EventGetSum()立即調用 EventGetSum方法。

如果您編寫new EventHandler(EventGetSum)創建一個委託,它將在調用時調用EventGetSum。

Control.Invoke的調用會從負責控制的UI線程調用給定的委託。這是必要的,因爲你不能從任意線程訪問UI元素。

5

它在線程中執行EventGetSum方法,該窗口爲this所屬。

4

這通常用於處理跨線程UI調用。

查看ISynchronizeInvoke的MSDN文檔。

相關問題