C# event 與 EventHandler 筆記
說來慚愧...其實C#很多功能我很少用到,包括像是自己建立event與EventHandler,不過這東西是滿好用的,當物件產生怎樣的狀況時後可以產生通知,這個通知會帶有一些參數資訊,接著使用者可以自訂要如何處理,以前也曾花了一點時間稍微了解寫法,不過又忘了,現在溫習一下...
反正我都是寫簡單sample來理解.
namespace MySample
{
public partial class Sample : Form
{
public Sample()
{
InitializeComponent();
}
private void SampleRun_Click(object sender, EventArgs e)
{
event_test_sample testbj = new event_test_sample();
testbj.test_event += new EventHandler(test_method);
testbj.run_test();
}
void test_method(object sender, EventArgs e)
{
Console.WriteLine((e as MyArgs).value1);
}
}
class MyArgs : EventArgs
{
public int value1 = 0;
}
class event_test_sample
{
public event EventHandler test_event;
public void run_test()
{
MyArgs obj = new MyArgs();
for (int i = 0; i < 10; i++)
{
Console.WriteLine(i);
obj.value1 += i;
}
test_event(this, obj);
}
}
}
就這樣,其實也不複雜.