是否可以在C#中将文字代码块添加为事件处理程序?就像是:

Timer t = new Timer(1000);
t.Elapsed += new ElapsedEventHandler({ Console.WriteLine("Tick"); });


您可以在PowerShell中执行此操作,因此我认为也可以在C#中执行某些操作。

最佳答案

您可以使用Lambda表达式(C#3.0及更高版本):

t.Elapsed += (sender, args) => Console.WriteLine("Tick");


或匿名方法(C#2.0及更高版本):

// If you don't need the parameter values
t.Elapsed += delegate { Console.WriteLine("Tick"); };

// If you do need the parameter values
t.Elapsed += delegate(Object sender, ElapsedEventArgs args) {
    Console.WriteLine("Tick from {0}", sender);
};

关于c# - C#添加事件处理程序文字代码块,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7530743/

10-08 22:26