イベントやデリゲートについて、実際の例を使って生徒に教えたいと思います。それを実際のイベントに関連付けたいと思います。
次の実際のシナリオをイベントとデリゲートに変換したいと思います。
私は心拍数モニターを持っています。心拍数が異常になると、医師に心拍数の異常が通知されます。
C# 4.0 でコードを記述して、イベントとデリゲートにマップしたいと考えています。
ヘルプは大歓迎です。
次のコードを使用できます。
class MyHeartBeatMonitor
{
public event EventHandler<AbnormalHeartRateSimulation> Abnormalheartbeats;
public void NotifyFamilyDoctor()
{
EventHandler<AbnormalHeartRateSimulation> handler
= Abnormalheartbeats;
if (handler != null)
{
AbnormalHeartRateSimulation simulatedRates =
new AbnormalHeartRateSimulation();
simulatedRates.heartRate = 140;
handler(this, simulatedRates);
}
}
}
public class AbnormalHeartRateSimulation : EventArgs
{
public int heartRate { get; set; }
}
class FamilyDoctor
{
public void EventHandler(
object sender,AbnormalHeartRateSimulation args)
{
Console.WriteLine("Your Patient's HearRate is " + args.heartRate);
}
}
class Program
{
static void Main(string[] args)
{
MyHeartBeatMonitor monitor = new MyHeartBeatMonitor();
FamilyDoctor doctor = new FamilyDoctor();
monitor.Abnormalheartbeats += doctor.EventHandler;
monitor.NotifyFamilyDoctor();
Console.ReadKey(true);
}
}
先に進んで、要件に基づいてカスタマイズしてください。ではごきげんよう!