♥ 1.Adım
♥ 2.Adım
♥ 3.Adım
♥ 5.Adım
♥ 6.Adım
♥ 7.Adım
♥ 8.Adım
class Program
{
public delegate void islemler(int x, int y);
static void Main(string[] args)
{
islemler operation = new islemler(Carp);
operation += new islemler(Topla);
operation(5, 3);
Console.ReadLine();
}
static void Carp(int x, int y)
{
Console.WriteLine("Çarpma sonucu : {0} ", x * y);
}
static void Topla(int x, int y)
{
Console.WriteLine("Toplama sonucu : {0} ", x + y);
}
}
class Program
{
public delegate void depoEventHandler();
public static event depoEventHandler depoEvent;
public class Depo
{
private int suseviyesi = 0;
public int SuSeviyesi
{
get { return suseviyesi; }
set
{
suseviyesi = value;
if (suseviyesi > 1000 && depoEvent != null)
depoEvent();
}
}
}
static void Main(string[] args)
{
depoEvent += new depoEventHandler(Doldu);
for (int i = 0; i < 1250; i += 200)
{
Depo t = new Depo();
t.SuSeviyesi = i;
Console.WriteLine("{0}", i);
Thread.Sleep(1000);
}
}
static void Doldu()
{
Console.WriteLine("Depo Taştı");
}
}
public delegate void depoEventHandler();
public static event depoEventHandler depoEvent;
public class Depo
{
private int suseviyesi = 0;
public int SuSeviyesi
{
get { return suseviyesi; }
set
{
suseviyesi = value;
if (suseviyesi > 1000 && depoEvent != null)
depoEvent();
}
}
}
Depodaki su seviyesini belirten bir propertimiz var ve bu propertimizin (SuSeviyesi) her değiştiğinde değerin 1000 i geçip geçmediğini kontrol ediyoruz. burdaki if in içeriğindeki depoEvent != null ifadesi olayımıza bir metod atanıp atanmadığını kontrol ediyor. Eğer su seviyesi 1000 lt den büyükse işte o zaman olayımız gerçekleşmiş demektir ve olayın belirttiği metod çalışacaktır. depoEvent += new depoEventHandler(Doldu);