「C#」イベントに匿名メソッドを登録するサンプル

2021年10月19日

説明
クラス やオブジェクトは、何か重要なことが起こった場合に、イベントを使用して他のクラスまたはオブジェクトに通知を送ります。
イベントを送信する ( 発生させる) クラスを パブリッシャー 、イベントを受信する ( 処理する) クラスを サブスクライバー と呼びます。
書式
event デリゲートの型 イベントの名称

使用例

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
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();
//匿名メソッドを実行
sp.EventA += delegate() { Console.WriteLine("study skill"); };
sp.EventA += delegate() { Console.WriteLine("becom smart"); };
sp.EventA += delegate() { Console.WriteLine("in arkgame.com"); };
sp.funA();
Console.ReadKey();
}
}
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(); //匿名メソッドを実行 sp.EventA += delegate() { Console.WriteLine("study skill"); }; sp.EventA += delegate() { Console.WriteLine("becom smart"); }; sp.EventA += delegate() { Console.WriteLine("in arkgame.com"); }; sp.funA(); Console.ReadKey(); } }
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();
        //匿名メソッドを実行
        sp.EventA += delegate() { Console.WriteLine("study skill"); };
        sp.EventA += delegate() { Console.WriteLine("becom smart"); };
        sp.EventA += delegate() { Console.WriteLine("in arkgame.com"); };
        sp.funA();

        Console.ReadKey();
    }
}

実行結果
イベントに匿名メソッドを登録する
study skill
becom smart
in arkgame.com

C#

Posted by arkgame