예제 #1
0
        static void Main(string[] args)
        {
            Feedback f = null;

            // f.Invoke(67);
            DelegateIntro.Go();
            Console.ReadLine();
        }
예제 #2
0
        private static void InstanceDelegateDemo()
        {
            Console.WriteLine("----- Instance Delegate Demo -----");
            DelegateIntro di = new DelegateIntro();

            Counter(1, 3, new Feedback(di.FeedbackToFile));

            Console.WriteLine();
        }
예제 #3
0
        private static void ChainDelegateDemo2(DelegateIntro di)
        {
            Console.WriteLine("----- Chain Delegate Demo 2 -----");
            Feedback fb1 = new Feedback(FeedbackToConsole);
            Feedback fb2 = new Feedback(FeedbackToMsgBox);
            Feedback fb3 = new Feedback(di.FeedbackToFile);

            Feedback fbChain = null;

            fbChain += fb1;
            fbChain += fb2;
            fbChain += fb3;
            Counter(1, 2, fbChain);

            Console.WriteLine();
            fbChain -= new Feedback(FeedbackToMsgBox);
            Counter(1, 2, fbChain);
        }
예제 #4
0
        private static void ChainDelegateDemo1(DelegateIntro di)
        {
            Console.WriteLine("----- Chain Delegate Demo 1 -----");
            Feedback fb1 = new Feedback(FeedbackToConsole);
            Feedback fb2 = new Feedback(FeedbackToMsgBox);
            Feedback fb3 = new Feedback(di.FeedbackToFile);

            Feedback fbChain = null;

            fbChain = (Feedback)Delegate.Combine(fbChain, fb1);
            fbChain = (Feedback)Delegate.Combine(fbChain, fb2);
            fbChain = (Feedback)Delegate.Combine(fbChain, fb3);
            Counter(1, 2, fbChain);

            Console.WriteLine();
            fbChain = (Feedback)Delegate.Remove(fbChain, new Feedback(FeedbackToMsgBox));
            Counter(1, 2, fbChain);
        }
예제 #5
0
 static void Main(string[] args)
 {
     DelegateIntro.Go();
     Console.ReadLine();
 }