예제 #1
0
        static void Main(string[] args)
        {
            var dealer = new CarDealer();

              var michael = new Consumer("Michael");
              WeakEventManager<CarDealer, CarInfoEventArgs>.AddHandler(dealer, "NewCarInfo", michael.NewCarIsHere);

              dealer.NewCar("Mercedes");

              var sebastian = new Consumer("Sebastian");
              WeakEventManager<CarDealer, CarInfoEventArgs>.AddHandler(dealer, "NewCarInfo", sebastian.NewCarIsHere);

              dealer.NewCar("Ferrari");

              WeakEventManager<CarDealer, CarInfoEventArgs>.RemoveHandler(dealer, "NewCarInfo", michael.NewCarIsHere);

              dealer.NewCar("Red Bull Racing");
        }
예제 #2
0
파일: Program.cs 프로젝트: CSharpDev/Csharp
        static void Main()
        {
            var dealer = new CarDealer();

            var michael = new Consumer("Michael");
            dealer.NewCarInfo += michael.NewCarIsHere;

            dealer.NewCar("Mercedes");

            var nick = new Consumer("Nick");
            dealer.NewCarInfo += nick.NewCarIsHere;

            dealer.NewCar("Ferrari");

            dealer.NewCarInfo -= michael.NewCarIsHere;

            dealer.NewCar("Toyota");
            Console.ReadKey();
        }
예제 #3
0
파일: Program.cs 프로젝트: CSharpDev/Csharp
        static void Main()
        {
            var dealer = new CarDealer();

            var michael = new Consumer("Michael");
            WeakCarInfoEventManager.AddListener(dealer, michael);

            dealer.NewCar("Mercedes");

            var nick = new Consumer("Nick");
            WeakCarInfoEventManager.AddListener(dealer, nick);

            dealer.NewCar("Ferrari");

            WeakCarInfoEventManager.RemoveListener(dealer, michael);

            dealer.NewCar("Toyota");
            System.Console.ReadKey();
        }
예제 #4
0
        static void Main()
        {
            var dealer = new CarDealer();

            var michael = new Consumer("Michael");
            dealer.NewCarInfo += michael.NewCarIsHere;

            dealer.NewCar("Ferrari");

            var nick = new Consumer("Sebastian");
            dealer.NewCarInfo += nick.NewCarIsHere;

            dealer.NewCar("Mercedes");

            dealer.NewCarInfo -= michael.NewCarIsHere;

            dealer.NewCar("Red Bull Racing");

            Console.ReadKey();
        }
        static void Main()
        {
            var dealer = new CarDealer();

            var daniel = new Consumer("Daniel");

            WeakEventManager <CarDealer, CarInfoEventArgs> .AddHandler(dealer, "NewCarInfo", daniel.NewCarIsHere);

            dealer.NewCar("Mercedes");

            var sebastian = new Consumer("Sebastian");

            WeakEventManager <CarDealer, CarInfoEventArgs> .AddHandler(dealer, "NewCarInfo", sebastian.NewCarIsHere);

            dealer.NewCar("Ferrari");

            WeakEventManager <CarDealer, CarInfoEventArgs> .RemoveHandler(dealer, "NewCarInfo", daniel.NewCarIsHere);

            dealer.NewCar("Red Bull Racing");
        }
예제 #6
0
파일: Program.cs 프로젝트: CSharpDev/Csharp
        static void Main()
        {
            var dealer = new CarDealer();

            var michael = new Consumer("Michael");

            WeakCarInfoEventManager.AddListener(dealer, michael);

            dealer.NewCar("Mercedes");

            var nick = new Consumer("Nick");

            WeakCarInfoEventManager.AddListener(dealer, nick);

            dealer.NewCar("Ferrari");

            WeakCarInfoEventManager.RemoveListener(dealer, michael);

            dealer.NewCar("Toyota");
            System.Console.ReadKey();
        }
예제 #7
0
파일: Program.cs 프로젝트: CSharpDev/Csharp
        static void Main()
        {
            var dealer = new CarDealer();

            var michael = new Consumer("Michael");

            dealer.NewCarInfo += michael.NewCarIsHere;

            dealer.NewCar("Mercedes");

            var nick = new Consumer("Nick");

            dealer.NewCarInfo += nick.NewCarIsHere;

            dealer.NewCar("Ferrari");

            dealer.NewCarInfo -= michael.NewCarIsHere;

            dealer.NewCar("Toyota");
            Console.ReadKey();
        }
예제 #8
0
파일: Program.cs 프로젝트: liuqun/ProCSharp
        static void Main()
        {
            var dealer = new CarDealer();

            var michael = new Consumer("Michael");

            dealer.NewCarInfo += michael.NewCarIsHere;

            dealer.NewCar("Ferrari");

            var nick = new Consumer("Sebastian");

            dealer.NewCarInfo += nick.NewCarIsHere;

            dealer.NewCar("Mercedes");

            dealer.NewCarInfo -= michael.NewCarIsHere;

            dealer.NewCar("Red Bull Racing");

            Console.ReadKey();
        }
예제 #9
0
        static void Main()
        {
            var dealer = new CarDealer();

            var michael = new Consumer("Michael");

            WeakEventManager <CarDealer, CarInfoEventArgs> .AddHandler(dealer, "NewCarInfo", michael.NewCarIsHere);

            dealer.NewCarInfo += michael.NewCarIsHere;

            dealer.NewCar("Ferrari");

            var sebastian = new Consumer("Sebastian");

            WeakEventManager <CarDealer, CarInfoEventArgs> .AddHandler(dealer, "NewCarInfo", sebastian.NewCarIsHere);

            dealer.NewCarInfo += sebastian.NewCarIsHere;

            dealer.NewCar("Mercedes");

            dealer.NewCarInfo -= michael.NewCarIsHere;

            dealer.NewCar("Red Bull");
        }
예제 #10
0
파일: Program.cs 프로젝트: xiongfj/Backup
        static void Main(string[] args)
        {
            // 内部发送事件
            var dealer = new CarDealer();

            var michael = new Consumer("1111");

            // 绑定 dealer 内的 NewCarInfo 事件到 michael.NewCarIsHere 函数
            WeakEventManager <CarDealer, CarInfoEventArgs> .AddHandler(dealer, "NewCarInfo", michael.NewCarIsHere);

            dealer.NewCar("aaaa");

            // 添加一个响应函数
            var sebastian = new Consumer("2222");

            WeakEventManager <CarDealer, CarInfoEventArgs> .AddHandler(dealer, "NewCarInfo", sebastian.NewCarIsHere);

            dealer.NewCar("bbb");

            // 取消 michael 响应函数
            WeakEventManager <CarDealer, CarInfoEventArgs> .RemoveHandler(dealer, "NewCarInfo", michael.NewCarIsHere);

            dealer.NewCar("ccccc");
        }