태터데스크 관리자

도움말
닫기
적용하기   첫페이지 만들기

태터데스크 메시지

저장하였습니다.

실버라이트의 이벤트 모델은 자바스크립트를 통해서 이벤트 처리를 하고 있는데, 이 방식은 플래시와 매우 흡사합니다.이벤트 디스패처(Event Dispatcher)와 이벤트 리스너(혹은 핸들러)의 개념이 있는 옵저버 패턴을따르고 있으며, 이벤트 핸들러(Event Handler)를 등록하여 이벤트가 발생했을 때 생성된 이벤트 오브젝트를 다루는 방식으로 되어있습니다. 자바스크립트의 경우 액션스크립트와 같은 addEventListener() 함수를 사용하므로 플래시 개발자도 쉽게 적응할 수 있습니다. 이벤트 이름과 지원하는 이벤트는 조금 차이가 있답니다.

ex)
오브젝트.addEventListener("이벤트이름", Sys.Silverlight.createDelegate(this, this.prevPost));

오브젝트는 XAML에서 정의한 개체를 의미합니다.
Sys.Silverlight.createDelegate는 실버라이트 내장 함수로 this 오브젝트와 특정 함수를 연결해서 delegate 함수를 만들어 줍니다. 즉, this.prevPost()를 호출해 주는 임시 함수를 만들어 주는 역할을 합니다. 왜 이렇게 하냐면, 만약 this.prevPost를 이벤트 핸들러 함수로 등록하게 되면 this 오브젝트 영역에서 함수를 실행하지 않기 때문이죠. 따라서 this 영역에서 메소드로서 온전히 실행되도록 delegate 함수를 생성하는 것이랍니다.

다음은 이벤트의 종류입니다.

Event TypeEvents
Control supportOnError
OnFullScreenChange
OnLoad
OnResize
Downloader supportCompleted (Downloader)
DownloadProgressChanged (Downloader)
FocusGotFocus
Loaded
LostFocus
Keyboard inputKeyDown
KeyUp
MediaBufferingProgressChanged
Completed (Storyboard)
CurrentStateChanged
DownloadProgressChanged (MediaElement)
MarkerReached
MediaEnded
MediaFailed
MediaOpened
Mouse inputMouseEnter
MouseLeave
MouseLeftButtonDown
MouseLeftButtonUp
MouseMove