C# 기초 강의실

시삽: 레드플러스 님 
게시판 이동:
 제목 : 이벤트(event)와 델리게이트(delegate)를 사용한 짝수의 합
글번호: 276
작성자: 레드플러스
작성일: 2005/06/22 오후 3:45:00
조회수: 7736
using System;
using 짝수의합.Div;//Input 클래스에 직접 접근하도록...

namespace 짝수의합{
    public class JavaScript{
        public static void Calc(){
            int intSum = 0;
            for(int i = 1;i <= 100;i++){
                if(i % 2 == 0){
                    intSum += i;
                }
            }
            Console.WriteLine(
                "1~100까지 짝수 합 : {0}"    , intSum);
        }
    }
    namespace Div{
        public delegate void EventHandler();//대리자
        public class Input{
            private static string _Type;
            public static string Type{    //Type속성
                get{return _Type;}
                set{_Type = value;}
            }
            private static string _Value;
            public static string Value{ //Value속성
                get{return _Value;}
                set{_Value = value;}
            }
            //이벤트 : 대리자 타입이 필요
            public static event EventHandler Click;
            //OnClic 이벤트 발생 메서드 생성
            public static void OnClick(){
                if(Click != null){
                    Click();//이벤트 샐행
                }
            }
        }
    }
    public class Html{
        public static void Main(string[] args){
            //[1] 델리게이트와 이벤트를 전혀 사용하지 않을 경우
            짝수의합.JavaScript.Calc();
            짝수의합.JavaScript.Calc();
            //[2] 델리게이트를 사용해서 한번에 2번 호출
            짝수의합.Div.EventHandler e;
            e = new 짝수의합.Div.EventHandler(
                    짝수의합.JavaScript.Calc);
            e += new 짝수의합.Div.EventHandler(
                짝수의합.JavaScript.Calc);
            e();        
            //[3] 이벤트에 등록 후 이벤트 처리기 사용
            Input.Click +=
                new 짝수의합.Div.EventHandler(
                    짝수의합.JavaScript.Calc);
            Input.Click +=
                new 짝수의합.Div.EventHandler(
                    짝수의합.JavaScript.Calc);
            Input.OnClick();
        }
    }
}
 
이전 글   다음 글 삭제 수정 답변 글쓰기 리스트

(댓글을 남기려면 로그인이 필요합니다.)

관련 아티클 리스트
  제       목 파일 작성자 작성일 조회
이전글 10. 형(Type)과 내장 클래스 - 레드플러스 2003-03-31 7112
  9. 이벤트(event)와 델리게이트(delegate) - 레드플러스 2003-03-31 13701
  9.1. 예제. 다중 메서드 호출 : 2개의 메서드 따로 따로 호출 - 레드플러스 2003-05-26 6722
  9.2. 예제. 델리게이트(delegate)를 활용한 여러개의 메서드 한번에 호출 - 레드플러스 2003-05-26 8336
  9.3. 예제. 매개변수가있는대리자.cs - 레드플러스 2003-05-26 6465
  9.4. 예제. 델리게이트연산.cs - 레드플러스 2004-11-07 6286
  이벤트핸들러생성.cs - 레드플러스 2005-06-21 8532
  이벤트핸들러생성.htm - 레드플러스 2005-06-21 5967
  짝수의합.htm - 레드플러스 2005-06-22 5852
현재글 이벤트(event)와 델리게이트(delegate)를 사용한 짝수의 합 - 레드플러스 2005-06-22 7736
  C# 기초문법 복습 : 처음부터 이벤트까지 : 확인또는취소.htm - 레드플러스 2005-06-23 6856
  9.12. C# 기초문법 복습 : 처음부터 이벤트까지 : 확인또는취소.cs - 레드플러스 2005-06-23 6250
  9.5. 예제. 스태틱과인스턴스.cs - 레드플러스 2005-07-18 5896
  9.6. 예제. 이벤트핸들러생성.cs - 레드플러스 2005-07-18 7478
  이벤트를사용한짝수의합.htm - 레드플러스 2005-07-19 5997
  이벤트를사용한짝수의합.cs - 레드플러스 2005-07-19 5931
  이벤트 확장 : 매개변수도 있고 반환값도 있는 메서드 호출 - 레드플러스 2006-07-18 5893
  9.10. 대리자.cs - 레드플러스 2007-02-13 5440
  9.11. 이벤트.cs - 레드플러스 2007-02-13 5316
다음글 8. 메서드(method)와 속성(property) - 레드플러스 2003-03-31 8457
 
손님 사용자 Anonymous (손님)
로그인 Home