Пример #1
0
        private static void DelegateTest()
        {
            CustomerManager   customerManager   = new CustomerManager();
            Matematik         matematik         = new Matematik();
            DelegateMessenger delegateMessenger = customerManager.SendMessage;

            matematik.TestDelegate(delegateMessenger);
        }
Пример #2
0
        private static void DelegateDemo()
        {
            CustomerManager   customerManager   = new CustomerManager();       //CustomerManeger classından nesne oluşturuldu.
            DelegateMessenger delegateMessenger = customerManager.SendMessage; //Bu nesneye ait metotlar oluşturulan delegateye atandı.

            delegateMessenger += customerManager.ShowAlert;                    //delegate ye metot eklendi.
            delegateMessenger();                                               //delegate aktif hale getirildi.


            Matematik    matematikIslem = new Matematik();
            DelegateMath delegateMath   = matematikIslem.Topla;

            delegateMath += matematikIslem.Cikarma;
            delegateMath(4, 3);


            DelegateCalculate delegateCalculate = matematikIslem.Bol;

            result = delegateCalculate(5, 3);
            Console.WriteLine(result);
            delegateCalculate += matematikIslem.Carp;
            Console.WriteLine(delegateCalculate(result, 3));
        }
Пример #3
0
        private static void DelegateExamples()
        {
            CustomerManager customerManager = new CustomerManager();
            Matematik       matematik       = new Matematik();
            //customerManager.SendMessage();
            //customerManager.ShowAlert();

            DelegateMessenger delegateMessenger = customerManager.SendMessage; // customerManager nesnesindeki sendMessage Metodu delegateMessenger Delegate ine eklendi.
            MyDelegate2       myDelegate2       = customerManager.SendMessage2;
            MyDelegate3       myDelegate3       = matematik.Topla;

            delegateMessenger += customerManager.ShowAlert; //customerManager nesnesindeki sendMessage Metodu ShowAlert Delegate ine eklendi.
            delegateMessenger -= customerManager.SendMessage;

            myDelegate2 += customerManager.ShowAlert2;

            myDelegate3 += matematik.Carp;

            delegateMessenger();           // delegateMessenger a atanan metotlar çağırıldı.
            var sonuc = myDelegate3(2, 3); // değer döndüren  delegatedeki birden fazla metotlarda en son hesaplanan(delegate e ekleme sırasına göre) değer görüntülenir.

            Console.WriteLine(sonuc);
            myDelegate2("Hello");
        }
Пример #4
0
 public void TestDelegate(DelegateMessenger action) // Action void geri dönüş tipine sahip herhangi bir parametre almayan metotları tutar.
 {
     action.Invoke();
 }