コード例 #1
0
        public void Events()
        {
            var button = new DelegateButton();

            button.Click += delegate { Console.WriteLine("Pressed!"); };

            button.Press();
        }
コード例 #2
0
        public void EncapsulationIssue_1()
        {
            var button = new DelegateButton();

            button.Click += delegate { Console.WriteLine("Pressed!"); };

            //Malicious Code
            button.Click.Invoke();
        }
コード例 #3
0
        public void EncapsulationIssue_2()
        {
            var button = new DelegateButton();

            button.Click += delegate { Console.WriteLine("Do Something Important"); };

            //Malicious Code
            button.Click = delegate { Console.WriteLine("Do Nothing"); };

            button.Press();
        }