好的,所以我在带有 C# 的 .Net 4 中使用 System.Timers.Timer
。
我的定时器对象是这样的:
var timer = new Timer {Interval = 123};
我的 Timer Elapsed 事件处理程序指向这样的方法:
timer.Elapsed += MyElapsedMethod;
我的方法是这样的:
static void MyElapsedMethod(object sender, ElapsedEventArgs e)
{
Console.WriteLine("Foo Bar");
}
我想将一个字符串传递给这个方法,我该怎么做?
谢谢
最佳答案
最简单的方法是将事件处理程序更改为匿名函数。它允许您在声明时传递字符串。
string theString = ...;
timer.Elapsed += (sender, e) => MyElapsedMethod(sender, e, theString);
static void MyElapsedMethod(object sender, ElapsedEventArgs e, string theString) {
...
}
关于c# - 如何将对象传递给计时器事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9977393/