1 using System;
2 using System.Collections.Generic;
3 using System.Linq;
4 using System.Text;
5 using System.Threading.Tasks;
6
7
8 namespace Wrox.ProCSarp.Delegates
9 {
10 public class CarInfoEventArgs:EventArgs
11 {
12 public CarInfoEventArgs(string car)
13 {
14 this.Car = car;
15 }
16
17 public string Car {get; private set;}
18 }
19
20 public class CarDealer
21 {
22 public event EventHandler<CarInfoEventArgs> NewCarInfo;
23
24 public void NewCar(string car)
25 {
26 Console.WriteLine ("CarDealer, new car{0}", car);
27
28 RaiseNewCarInfo(car);
29 }
30
31 protected virtual void RaiseNewCarInfo(string car)
32 {
33 EventHandler<CarInfoEventArgs> newCarInfo = NewCarInfo;
34 if (newCarInfo != null)
35 {
36 newCarInfo(this, new CarInfoEventArgs(car));
37 }
38 }
39 }
40 }
暂存