だから私はC#でを.Net 4に使用しています。オブジェクトをタイマーイベントに渡すにはどうすればよいですか?
私はそうのように私のタイマーオブジェクトを持っている:
var timer = new Timer {Interval = 123};
私は私のタイマー経過イベントハンドラはそうのような方法で指摘している:
:timer.Elapsed += MyElapsedMethod;
そして、私の方法は、このようになります
static void MyElapsedMethod(object sender, ElapsedEventArgs e)
{
Console.WriteLine("Foo Bar");
}
このメソッドに文字列を渡したいのですが、どうすればいいですか?
おかげ
実際には、まだいくつかのグローバル変数を読んでいます(はい、ローカルかもしれませんが、意味をなさない)。イベントハンドラを無名関数に置き換えました。 this 'timer.Elapsed + =(s、e)=> Console.WriteLine(theString);'さらに短く、アイデアは同じです。 –
イベントハンドラをインラインに割り当てるのは、後でリリースできないため、お勧めしません。 –