본문 바로가기
C#, MONO

다른 폼으로 메시지 전송(1)

by gigasound 2021. 8. 9.

현재 사용 중인 폼에서 다른 폼으로 메시지를 전송해서, 다른 폼이 알아서 일을 처리하도록 유도할 수 있습니다.

이번 예에서는 동작 중인 폼에서 메인 폼으로 이벤트를 전송하고, 메인 폼이 이를 반영하는 내용을 작성해 보겠습니다.

먼저 하나의 폼(userControlX)을 작성하고 다음의 코드를 입력합니다. 

//- 이벤트 헨들러 정의
public event EventHandler btn_event;

//- 초기화를 위해 객체 상성자에 이벤트 설정
public userControlX(){
	btn.Click += btn_envet;
}

//- 동작 함수내에 이벤트 발생시 내용을 전달 
public fuc(object sender, EventArgs e){
	if(event !=  null){ 
    	btn_event(sender,e);
    }
}

 메인폼은 userControlX의 이벤트 발생을 수신하고 콜백 함수를 호출해서 동작합니다. 

//- 이벤트 헨들러를 선언
userControlX x = new userControlX();

//- 폼 생성자에서 이벤트 헨들러와 콜백함수 연결
form(){	x. btn_envet = UserEventFunc();}

//- 콜백 함수
public UserEventFunc (object sender, EventArgs e){
	...
}