이 문서에서는 Windows Forms 기반 애플리케이션에서 사용할 WPF(Windows Presentation Foundation) 컨트롤을 만드는 방법을 보여 줍니다.
필수 조건
이 연습을 완료하려면 Visual Studio가 필요합니다.
프로젝트를 만듭니다.
Visual Studio를 열고 Visual Basic 또는 Visual C#에서 HostingWpf이라는 새 Windows Forms 앱(.NET Framework) 프로젝트를 만듭니다.
비고
WPF 콘텐츠를 호스트하는 경우 C# 및 Visual Basic 프로젝트만 지원됩니다.
새 WPF 컨트롤 만들기
새 WPF 컨트롤을 만들고 프로젝트에 추가하는 작업은 다른 항목을 프로젝트에 추가하는 것만큼 쉽습니다. Windows Forms 디자이너는 복합 컨트롤 또는 사용자 정의 컨트롤이라는 특정 종류의 컨트롤에서 작동합니다. WPF 사용자 정의 컨트롤에 대한 자세한 내용은 UserControl을 참조하세요.
비고
WPF용 System.Windows.Controls.UserControl 형식은 Windows Forms에서 제공하는 System.Windows.Forms.UserControl이라는 사용자 정의 컨트롤 형식과 별개입니다.
새 WPF 컨트롤을 만들려면:
솔루션 탐색기에서 새 WPF 사용자 정의 컨트롤 라이브러리(.NET Framework) 프로젝트를 솔루션에 추가합니다. 컨트롤 라이브러리의 기본 이름인
WpfControlLibrary1을 사용합니다. 기본 컨트롤 이름은UserControl1.xaml입니다.새 컨트롤을 추가하면 다음과 같은 효과가 있습니다.
UserControl1.xaml 파일이 추가됩니다.
UserControl1.xaml.cs 파일(또는 UserControl1.xaml.vb)이 추가됩니다. 이 파일에는 이벤트 처리기 및 기타 구현에 대한 코드 숨김이 포함됩니다.
WPF 어셈블리에 대한 참조가 추가됩니다.
파일 UserControl1.xaml이 Visual Studio의 WPF 디자이너에서 열립니다.
디자인 뷰에서
UserControl1이 선택되었는지 확인합니다.도구 상자에서 System.Windows.Controls.TextBox 컨트롤을 디자인 화면으로 끕니다.
속성 창에서 Text 속성의 값을 Hosted Content로 설정합니다.
비고
일반적으로 더 복잡한 WPF 콘텐츠를 호스트해야 합니다. System.Windows.Controls.TextBox 컨트롤은 여기서 설명 목적으로만 사용됩니다.
프로젝트를 빌드합니다.
Windows Form에 WPF 컨트롤 추가
폼에서 새 WPF 컨트롤을 사용할 준비가 되었습니다. Windows Forms는 ElementHost 컨트롤을 사용하여 WPF 콘텐츠를 호스트합니다.
Windows Form에 WPF 컨트롤을 추가하려면:
Windows Forms 디자이너에서
DemoMarqueeControl을 엽니다.도구 상자에서 WPFUserControlLibrary WPF 사용자 정의 컨트롤 레이블이 있는 탭을 찾습니다.
UserControl1인스턴스를 폼으로 끕니다.WPF 컨트롤을 호스트할 폼에 ElementHost 컨트롤이 자동으로 만들어집니다.
ElementHost 컨트롤의 이름이
elementHost1로 지정되고, 속성 창에서 해당 Child 속성이 UserControl1로 설정된 것을 확인할 수 있습니다.WPF 어셈블리에 대한 참조가 프로젝트에 추가됩니다.
elementHost1컨트롤에는 사용 가능한 호스팅 옵션을 표시하는 스마트 태그 패널이 있습니다.
ElementHost 작업 스마트 태그 패널에서 부모 컨테이너에서 도킹을 선택합니다.
F5 키를 눌러 애플리케이션을 빌드하고 실행합니다.
다음 단계
Windows Forms와 WPF는 서로 다른 기술이지만 긴밀하게 상호 운용하도록 설계되었습니다. 응용 프로그램에서 다양한 모양과 동작을 제공하려면 다음을 시도합니다.
WPF 페이지에서 Windows Forms 컨트롤을 호스트합니다. 자세한 내용은 연습: WPF에서 Windows Forms 컨트롤 호스팅
WPF 콘텐츠에 Windows Forms 시각적 스타일을 적용합니다. 자세한 내용은 방법: 혼합 애플리케이션에서 비주얼 스타일 사용을 참조하세요.
WPF 콘텐츠의 스타일을 변경합니다. 자세한 내용은 연습: WPF 콘텐츠 스타일 지정을 참조하세요.
참고하십시오
.NET Desktop feedback