VB.NET 2008/VB - 이벤트

이벤트 처리 - AddHandler 및 RemoveHandler

본클라쓰 2011. 4. 17. 09:45

AddHandler 문과 Handles 절은 둘 다 이벤트를 처리할 이벤트 처리기를 지정할 수 있다는 점에서 비슷하다. 그러나 AddHandler와 RemoveHandler는 이벤트와 관련된 이벤트 처리기를 동적으로 추가, 제거 및 변경할 수 있으므로 Handles 절보다 좀 더 융통성을 제공한다. 공유 이벤트나 구조체 이벤트를 처리하려면 AddHandler를 사용해야 한다.

 

AddHandler에는 두 가지 인수, 즉 컨트롤 등의 이벤트 전송자에서 보낸 이벤트의 이름과 대리자로 평가되는 식이 사용된다. AddressOf 문이 항상 대리자에 대한 참조를 반환하므로 AddHandler를 사용할 때에는 대리자 클래스를 명시적으로 지정하지 않아도 된다. 다음 예제에서는 이벤트 처리기와 개체가 발생시킨 이벤트를 연결한다.

 

AddHandler Obj.XEvent, AddressOf Me.XEventHandler

 

이벤트 처리기와 이벤트의 연결을 끊은 RemoveHandler는 AddHandler와 같은 구문을 사용한다.

 

RemoveHandler Obj.XEvent, AddressOf Me.XEventHandler