有時候我無法理解最簡單的東西,我確定它在我的臉上,我只是看不到它。 我試着在這個簡單的類來創建一個方法的委託:Action <>多個參數的語法澄清
public static class BalloonTip
{
public static BalloonType BalType
{
get;
set;
}
public static void ShowBalloon(string message, BalloonType bType)
{
// notify user
}
}
現在,這個動作<>應該建立一個沒有實際宣告一個關鍵字爲「代表」的代表,我才明白正確的?然後:
private void NotifyUser(string message, BalloonTip.BalloonType ballType)
{
Action<string, BalloonTip.BalloonType> act;
act((message, ballType) => BalloonTip.ShowBalloon(message, ballType));
}
這將無法編譯。爲什麼? (順便說一句,我之所以需要這個委託而不是直接調用ShowBalloon(),是因爲調用必須由另一個線程而不是UI創建,所以我想我需要動作<>)
感謝,
Action <>沒有什麼特別之處,它只是一個泛型的委託(或者更確切地說)Microsoft包含在.NET框架的「System」命名空間中。 – Marlon