2009-02-27 30 views
25

我看到這條線在使用Action委託的許多網上的例子:零動作代表參數

public event Action MyEvent; 

但是,當我嘗試在自己的代碼,我得到這個錯誤

使用一般類型 「System.Action」需要「1」類型 參數

文檔肯定描述了一種形式沒有任何類型參數的Action。我錯過了什麼?

+4

不是問題的答案,但不應該爲事件使用動作。使用EventHandler或EventHandler 作爲事件的代表。 – 2009-02-27 01:46:05

+2

@GregBeech,感謝您的提示,但是在這裏不使用Action的原因是什麼? – 2011-09-26 18:43:45

+0

@ I.J.Kennedy這個答案是相當真棒http://stackoverflow.com/a/803320/1608072 – caiosm1005 2013-12-10 02:39:15

回答

22

確保您的應用程序引用了System.Core

編輯 - 也請確保您的目標是.NET 3.5,因爲System.Core.dll是該版本的一部分。

36

擴大安德魯斯答案。

在非3.5場景中使用Action是完全合法的。只需自己定義它。

public delegate void Action();