다음을 통해 공유


이벤트 처리 개요

이 페이지는 WPF 및 Silverlight 2에 적용됨

Microsoft Expression Blend는 사용자 입력과 상호 작용할 수 있는 풍부한 Windows 기반 응용 프로그램과 UI(사용자 인터페이스)를 개발할 수 있도록 설계되었습니다. 예를 들어 사용자가 마우스를 이동할 때 공이 움직이는 애니메이션 타임라인이 응용 프로그램에서 시작되도록 하려면 Expression Blend에서 제공하는 기능을 사용하여 그 관계를 구성할 수 있습니다. 또한 응용 프로그램 상태 자체의 변경에 응답하도록 응용 프로그램을 구성할 수 있습니다.

[!참고]

Microsoft Silverlight 1.0 이벤트 처리에 대한 자세한 내용은 Silverlight 1.0 개요Silverlight 응용 프로그램에서 스토리보드를 제어하는 단추 만들기를 참조하십시오. Silverlight 스크립팅 및 마우스 이벤트도 참조할 수 있습니다.

Expression Blend 응용 프로그램에서 대화형 작업 만들기

Expression Blend에서는 다음 두 가지 방법으로 응용 프로그램이 사용자 입력과 응용 프로그램 변경 사항에 응답하도록 할 수 있습니다.

  • 트리거 - 인터랙션 패널의 트리거에서 트리거를 구성합니다. 트리거를 구성하기 위해 XAML 코드를 프로그래밍하거나 작성하는 방법을 반드시 알고 있어야 할 필요는 없습니다.

    사용자가 응용 프로그램의 개체와 상호 작용할 때 또는 해당 개체의 상태가 변경될 때 트리거를 사용하여 애니메이션 타임라인을 시작, 중지, 일시 중지, 다시 시작, 제거하거나 끝으로 이동할 수 있습니다. 또한 상태가 변경될 때 배경색과 같은 속성 값을 변경하도록 트리거를 설정할 수 있습니다. 코드를 사용하여 트리거를 구성할 필요가 없으며 Expression Blend의 디자인 보기에서 모든 작업을 수행할 수 있습니다. 자세한 내용은 이 사용자 가이드의 트리거 개요애니메이션 개요를 참조하십시오.

    [!참고]

    Silverlight 2 프로젝트에서는 트리거를 사용할 수 없습니다.

  • 이벤트 처리기 - 이벤트 패널에서 이벤트 처리기를 설정합니다. 속성 패널에서 이벤트Cc294567.6c67bb3b-e8a2-4a63-bad5-54d5c15b04dd(ko-kr,Expression.10).png 단추를 클릭합니다.

    이벤트 처리기를 사용하여 속성 설정이나 애니메이션 타임라인 제어의 범위를 넘는 작업이 포함된 절차를 실행할 수 있습니다. 예를 들어 다른 개체에 대한 속성 설정, 새 문서 로드 또는 만들기, 수학적 계산을 사용하여 개체에 애니메이션 효과 적용 등의 다른 프로그래밍 논리를 추가할 수 있습니다. 이벤트 처리기 메서드는 문서의 코드 숨김 파일에 정의되며 C#이나 Visual Basic .NET으로 작성됩니다. 예를 들어 문서의 이름이 Window1.xaml이면 이벤트 처리기는 사용되는 프로그래밍 언어에 따라 Window1.xaml.cs 또는 Window1.xaml.vb 파일에 포함됩니다.

트리거를 사용하거나 이벤트 처리기 메서드를 사용하여 연결할 수 있는 이벤트 목록은 이 사용자 가이드의 WPF 이벤트 빠른 참조를 참조하십시오.

Cc294567.7e183f1f-37d8-4dcb-980c-19a5d61ca087(ko-kr,Expression.10).gif맨 위로 이동

이벤트 처리기 메서드에 연결

Expression Blend를 사용하면 빈 메서드에 대한 코드를 생성하여 이벤트 처리기 메서드를 작성할 수 있습니다. Microsoft Visual Studio 2008 Standard Edition 이상이 설치되어 있으면 Expression Blend가 Visual Studio 2008에서 프로젝트를 열고 코드 숨김 파일을 연 다음 빈 이벤트 처리기 메서드를 붙여 넣습니다. Visual Studio 2008 Standard Edition 이상이 설치되어 있지 않으면 수동으로 코드 숨김 파일을 열어 메서드를 붙여 넣을 수 있도록 Expression Blend에서 클립보드에 빈 이벤트 처리기 메서드를 복사합니다. 자세한 내용은 이 사용자 가이드의 새 이벤트 처리기 메서드 만들기를 참조하십시오.

Expression Blend는 팀 개발을 고려하여 설계되었습니다. 소프트웨어 팀은 UI 작업을 하는 디자이너와 UI 뒤에서 실행되는 코드 작업을 하는 프로그래머로 구성되는 경우가 많습니다. 다양한 이벤트 처리기 메서드를 추가한 개발자로부터 변경된 코드 숨김 파일을 받아 UI에서 연결해야 하는 경우가 있으며, 이것이 Expression Blend에서는 가능합니다. 자세한 내용은 기존 이벤트 처리기 메서드에 연결을 참조하십시오.

Cc294567.7e183f1f-37d8-4dcb-980c-19a5d61ca087(ko-kr,Expression.10).gif맨 위로 이동

프로그래밍 문제

이벤트 처리기 작성 시 Windows 기반 응용 프로그램 프로그래밍 경험이 있으면 매우 유용합니다. WPF(Windows Presentation Foundation) 스레딩 모델 및 UI 렌더링의 타이밍 때문입니다. 예를 들어 레이블에 표시되는 텍스트를 업데이트하고 몇 가지 추가 계산을 수행한 후 이벤트 처리기 메서드가 완료되기 전에 같은 레이블의 텍스트를 다시 업데이트하는 이벤트 처리기 메서드를 만들면 마지막 업데이트만 표시됩니다. 이벤트 처리기 메서드가 끝날 때 UI 렌더링이 발생하기 때문입니다. 모든 처리가 동일한 스레드에서 수행되어 UI를 업데이트하는 메서드가 실행되는 동안 응용 프로그램의 작업 시간이 초과되지 않습니다. 여러 번의 UI 업데이트와 계산을 수행하는 WPF 응용 프로그램 작성 방법에 대한 자세한 내용은 MSDN의 WPF 섹션에서 스레딩 모델 항목을 참조하십시오.

Cc294567.7e183f1f-37d8-4dcb-980c-19a5d61ca087(ko-kr,Expression.10).gif맨 위로 이동