다음을 통해 공유


응용 프로그램 개발 개요

업데이트: 2007년 11월

WPF(Windows Presentation Foundation)에서는 다음과 같은 형식의 응용 프로그램을 만들 수 있습니다.

  • 독립 실행형 응용 프로그램(클라이언트 컴퓨터에 설치해서 운영하는 실행 어셈블리로 구성된 전형적인 Windows 응용 프로그램)

  • XBAP(XAML 브라우저 응용 프로그램)(탐색 가능한 페이지로 이루어져 있고 이 페이지가 Windows Internet Explorer를 통해 탐색 및 호스팅되는 실행 어셈블리로 구성된 응용 프로그램)

  • 사용자 지정 컨트롤 라이브러리(재사용 가능한 컨트롤이 들어 있는 비실행 어셈블리)

  • 클래스 라이브러리(재사용 가능한 클래스가 들어 있는 비실행 어셈블리)

참고

WPF를 사용하여 Windows 서비스를 빌드할 수는 없습니다. WPF는 프레젠테이션 기술이므로 Windows 서비스에는 사용자 상호 작용과 관련된 시각적 작업을 수행하는 적절한 권한이 필요합니다. Windows 서비스에 적절한 권한이 없으면 예기치 않은 결과가 발생할 수 있습니다.

이러한 응용 프로그램 집합을 빌드하기 위해 WPF는 서비스 호스트를 구현합니다. 이 항목에서는 이러한 서비스에 대한 개요와 더 자세한 정보를 찾을 수 있는 링크를 제공합니다.

이 항목에는 다음 단원이 포함되어 있습니다.

  • 응용 프로그램 관리
  • WPF 응용 프로그램 리소스, 콘텐츠 및 데이터 파일
  • 창 및 대화 상자
  • 탐색
  • 호스팅
  • 빌드 및 배포
  • 응용 프로그램 성능
  • 관련 항목

응용 프로그램 관리

실행 가능한 WPF 응용 프로그램에는 일반적으로 다음과 같은 핵심 기능 집합이 필요합니다.

  • 진입점 메서드와 시스템 및 입력 메시지를 수신하는 Windows 메시지 루프 만들기를 비롯한 공통 응용 프로그램 인프라 만들기 및 관리

  • 응용 프로그램의 수명 추적 및 상호 작용

  • 명령줄 매개 변수 검색 및 처리

  • 응용 프로그램 범위에 속한 속성 및 UI 리소스 공유

  • 처리되지 않은 예외 검색 및 처리

  • 종료 코드 반환

  • 독립 실행형 응용 프로그램에서 창 관리

  • XBAP(XAML 브라우저 응용 프로그램)와 탐색 창 및 프레임이 있는 독립 실행형 응용 프로그램에서 탐색 추적

이러한 기능은 응용 프로그램 정의를 사용하여 응용 프로그램에 추가하는 Application 클래스로 구현됩니다. Application에는 다음과 같은 기능이 있습니다.

자세한 내용은 응용 프로그램 관리 개요를 참조하십시오.

WPF 응용 프로그램 리소스, 콘텐츠 및 데이터 파일

WPF에서는 리소스, 콘텐츠 및 데이터 파일을 비롯한 세 가지 형식의 비실행 데이터 파일을 사용하여 포함 리소스에 대한 Microsoft .NET Framework의 핵심 지원을 이용하고 확장합니다.

자세한 내용은 Windows Presentation Foundation 응용 프로그램 리소스, 콘텐츠 및 데이터 파일을 참조하십시오.

WPF 비실행 데이터 파일에 대한 지원에서 중요한 구성 요소는 고유한 URI를 사용하여 데이터 파일을 식별하고 로드하는 기능입니다.

자세한 내용은 Windows Presentation Foundation의 Pack URI를 참조하십시오.

창 및 대화 상자

사용자는 창을 통해 WPF 독립 실행형 응용 프로그램과 상호 작용합니다. 창의 용도는 응용 프로그램 콘텐츠를 호스팅하고, 대개 사용자가 콘텐츠와 상호 작용할 수 있게 만드는 응용 프로그램 기능을 노출하는 것입니다. WPF에서 창은 다음을 지원하는 Window 클래스로 캡슐화됩니다.

  • 창 만들기 및 표시

  • 소유자/소유된 창 관계 설정

  • 창 모양 구성(예: 크기, 위치, 아이콘, 제목 표시줄 텍스트, 테두리)

  • 창의 수명 추적 및 상호 작용

자세한 내용은 WPF 창 개요를 참조하십시오.

Window는 대화 상자라고 하는 특수한 유형의 창을 만드는 기능을 지원합니다. 모달 및 모덜리스 유형의 대화 상자를 모두 만들 수 있습니다.

사용 편의를 높이고 응용 프로그램 간의 재사용 및 일관성 있는 사용자 환경을 제공하기 위해 WPF에서는 OpenFileDialog, SaveFileDialogPrintDialog를 비롯한 세 가지 공용 Windows 대화 상자를 노출합니다.

메시지 상자는 사용자에게 중요한 텍스트 정보를 표시하고 간단한 예/아니요/확인/취소 질문을 하는 데 사용되는 특수한 유형의 대화 상자입니다. MessageBox 클래스를 사용하여 메시지 상자를 만들고 표시할 수 있습니다.

자세한 내용은 대화 상자 개요를 참조하십시오.

탐색

WPF는 페이지(Page)와 하이퍼링크(Hyperlink)를 사용하는 웹 스타일의 탐색을 지원합니다. 이러한 탐색 기능은 다음을 비롯한 다양한 방식으로 구현할 수 있습니다.

  • Internet Explorer에서 호스팅되는 독립 실행형 페이지

  • Internet Explorer에서 호스팅되는 XBAP로 컴파일되는 페이지

  • 독립 실행형 응용 프로그램으로 컴파일되고 탐색 창에서 호스팅되는 페이지(NavigationWindow)

  • 독립 실행형 페이지 또는 XBAP나 독립 실행형 응용 프로그램으로 컴파일되는 페이지에서 호스팅될 수 있는 프레임(Frame)을 통해 호스팅되는 페이지

WPF에서는 효과적인 탐색을 위해 다음을 구현합니다.

  • Frame, NavigationWindow 및 응용 프로그램 간 탐색을 지원하는 XBAP에서 사용되는 탐색 요청을 처리하기 위한 공유 탐색 엔진인 NavigationService

  • 탐색을 초기화하는 탐색 메서드

  • 탐색 수명을 추적하고 상호 작용하는 탐색 이벤트

  • 검사 및 조작이 가능한 "저널"을 사용한 후방 및 전방 탐색 기억

자세한 내용은 탐색 개요를 참조하십시오.

WPF에서는 구조적 탐색이라고 하는 특수한 유형의 탐색도 지원합니다. 구조적 탐색을 사용하면 호출 함수와 일관성을 유지하는 구조적이며 예측 가능한 방식으로 데이터를 반환하는 하나 이상의 페이지를 호출할 수 있습니다. 이 기능은 PageFunction<T> 클래스에 따라 달라집니다. 이 클래스에 대해서는 구조적 탐색 개요에서 자세히 설명합니다. 탐색 토폴로지 개요에서 설명하는 것처럼 복잡한 탐색 토폴로지를 간단하게 생성하기 위해서도 PageFunction<T>이 사용됩니다.

호스팅

XBAP는 Microsoft Internet Explorer 6, Windows Internet Explorer 7 또는 Microsoft WMC(Windows Media Center)에서 호스팅될 수 있습니다. 각 호스팅 모델에는 Windows Presentation Foundation 응용 프로그램 호스팅 항목에 설명되어 있는 고유한 고려 사항과 제약 조건 집합이 있습니다.

빌드 및 배포

명령줄 컴파일러를 사용하면 명령 프롬프트에서 간단한 WPF 응용 프로그램을 빌드할 수 있지만 WPF에서는 MSBuild(Microsoft Build Engine)를 통합하고 확장하여 개발 및 빌드 프로세스를 단순화하는 추가적인 지원을 제공합니다. 자세한 내용은 WPF 응용 프로그램 만들기(WPF)를 참조하십시오.

빌드하는 응용 프로그램의 형식에 따라 하나 이상의 배포 옵션을 선택하여 사용할 수 있습니다. 자세한 내용은 WPF 응용 프로그램 배포(WPF)를 참조하십시오.

응용 프로그램 성능

WPF 관련 성능 고려 사항에 대해서는 WPF 응용 프로그램 성능 최적화 개요를 참조하십시오.

참고 항목

개념

Windows Presentation Foundation 소개

Windows Presentation Foundation 시작