「C#」イベントにメソッドを追加(削除)するサンプル
書式
event デリゲートの型 イベントの名称
イベントにメソッドを+=で代入した場合は、メソッドを追加します。
イベントにメソッドを-=で代入した場合は、メソッドを削除します。
使用例
using System; // デリゲートを定義 delegate void deleA(); class Sample { // event デリゲートの型 イベントの名称 public event deleA EventA; public void funA() { Console.WriteLine("イベントに匿名メソッドを登録する"); //イベント名称EventA EventA(); } } class Arkgame { public static void Main() { //クラスのインスタンスの生成 Sample sp = new Sample(); //イベントにメソッドPrintAを追加 sp.EventA += new deleA (PrintA); //イベントにメソッドPrintBを追加 sp.EventA += new deleA(PrintB); sp.funA(); //イベントにメソッドPrintAを削除 sp.EventA -= new deleA(PrintA); sp.funA(); Console.ReadKey(); } public static void PrintA() { Console.WriteLine("study skill"); } public static void PrintB() { Console.WriteLine("become smart"); } }
実行結果
イベントに匿名メソッドを登録する
study skill
become smart
イベントに匿名メソッドを登録する
become smart