using System;
namespace Event
{
class Event
{
static void Main(string[] args)
{
Incrementer incrementer = new Incrementer();
Dozens dozens = new Dozens(incrementer);
incrementer.Docount();
Console.WriteLine("Count is:{0}",dozens.count);
}
}
delegate void Handler();
class Incrementer
{
public event Handler Counted;
public void Docount()
{
for (int i = 1; i < 100; i++)
{
if(i%12 == 0)
{
if (Counted != null)
{
Counted();
}
}
}
}
}
class Dozens
{
public int count { get; private set; }
public Dozens(Incrementer incrementer)
{
count = 0;
incrementer.Counted += HandleProcess;
}
void HandleProcess()
{
count++;
}
}
}