Share via


사용자 인터페이스 및 입력

이 문서에서는 현재 Microsoft에서 유지 관리되는 Windows UI 프레임워크의 개요를 제공하고 해당 기능을 비교합니다.

Microsoft는 UI 프레임워크와 앱 플랫폼을 모두 생산합니다. 앱 플랫폼에는 일반적으로 UI 프레임워크가 포함되지만 UI 프레임워크는 독립 실행형(앱 플랫폼과 함께 제공되지 않음) 또는 여러 앱 플랫폼과 함께 사용할 수 있습니다(앱 플랫폼 선택 참조).

여기서 설명하는 프레임워크에는 Windows 앱 SDK(WinUI 3) 및 UWP(WinUI 2), WPF(Windows Presentation Foundation) 및 WinForms(Windows Forms) 모두에 대한 WinUI(Windows UI 라이브러리)가 포함됩니다.

사용자 인터페이스 기본 사항

최신 Windows 앱을 빌드할 때 선택할 수 있는 UI 프레임워크가 있습니다. UI 프레임워크는 기본 제공 컨트롤, 스타일, 애니메이션, 입력 처리 등을 앱에 제공합니다.

Windows 앱용 사용자 인터페이스를 만드는 데 필요한 5가지 주요 구성 요소가 있습니다. 이러한 구성 요소는 일반적으로 각 UI 프레임워크에 기본 제공됩니다.

  • 컨트롤스타일

    • 컨트롤은 콘텐츠를 표시하거나 상호 작용을 활성화하는 UI 요소입니다. 컨트롤은 사용자 인터페이스의 구성 요소입니다.

      UWP, WinUI 2, WinUI 3에서 사용할 수 있는 Button 컨트롤의 예는 다음과 같습니다. 이 컨트롤을 앱에 배치하면 UI 프레임워크에서 제공하는 기본 디자인이 자동으로 수신됩니다.

      WinUI 버튼

    • 스타일은 색, 입력 체계, 아이콘, Fluent 재질 등으로 구성되며, 앱 디자인 전체에서 사용하여 진정한 고유한 환경을 만들 수 있습니다.

      WinUI 2 및 WinUI 3에서 사용할 수 있는 Acrylic이라는 스타일 구성 요소의 예는 다음과 같습니다. Acrylic은 앱 내의 화면이나 앱의 배경으로 사용할 수 있는 브러시입니다. 반투명 질감을 제공합니다.

      아크릴 소재

  • 입력 및 상호 작용

    최종 사용자는 다양한 방법을 통해 앱과 상호 작용하고 앱에 입력(예: 선택 또는 입력)을 제공할 수 있습니다. 입력의 몇 가지 예는 다음과 같습니다.

    • 마우스
    • 터치
    • Gamepad
    • Keyboard
    • Surface Dial
    • 터치패드
    • 음성
  • 장치 지원

    최종 사용자는 다양한 디바이스에서 Windows 앱에 액세스하며, UI 프레임워크는 특정 앱만 지원할 수 있습니다. 실행할 Windows 앱에 대한 몇 가지 일반적인 디바이스는 다음과 같습니다.

    • PC(“데스크톱”이라고도 하지만 노트북도 포함)
    • 태블릿
    • HoloLens
    • Xbox
    • Surface Hub
  • 동작 및 애니메이션

    기본 제공 애니메이션은 실제로 앱에 멋진 모양과 느낌을 제공하고 Windows 전체에서 타사 앱과 일관성을 제공할 수 있습니다.

    UWP, WinUI 2, WinUI 3의 기본 제공 애니메이션 예제는 최종 사용자가 밝은 모드와 어두운 모드 사이를 전환할 때 발생하는 애니메이션입니다. 최종 사용자가 전체 PC에 대한 모드를 전환하면 앱의 UI가 전환 애니메이션과 함께 자동으로 업데이트됩니다.

  • 유용성 및 접근성

    모든 단일 사용자가 앱을 즐겁게 사용하도록 하려면 접근성을 고려해야 합니다.

    UI 프레임워크는 의도적인 키보드 동작, 화면 판독기 지원 등을 통해 컨트롤 및 스타일에 대한 기본 접근성을 제공합니다. 또한 많은 사용자 지정 컨트롤에서 액세스 가능한 작업(예: 화면 판독기 조작)을 위한 API도 제공합니다.

UI frameworks

Microsoft에서 릴리스된 각 UI 프레임워크에는 고유한 기능이 있고, 다양한 디자인 언어를 따르며, 최종 사용자에게 다양한 환경을 제공합니다. 이 섹션에서는 앱 빌드를 시작할 때 선택할 모든 주요 UI 프레임워크를 비교합니다.

아래 표에서는 이러한 UI 프레임워크 간의 몇 가지 주요 기능에 대한 간략한 요약을 보여 줍니다. 각 프레임워크에 대한 자세한 내용은 아래 탭을 탐색하여 확인합니다.

기능 Windows 앱 SDK (WinUI 3) UWP용 WinUI 2 WPF WinForms
지원되는 언어 C#/.NET 6 이상, C++/WinRT C#/.NET Native, C++/WinRT, C++/CX, VB C#/.NET 6 이상 및 .NET Framework, C++/CLI(Managed Extensions for C++), F#, VB C#/.NET 6 이상 및 .NET Framework, C++/CLI(Managed Extensions for C++), F#, VB
지원되는 장치 PC(노트북 및 태블릿 포함), 곧 출시될 모든 Windows 10 디바이스 지원 모든 Windows 10 디바이스(PC, 태블릿, HoloLens, Xbox, Surface Dial 등) 데스크톱 PC 및 노트북 데스크톱 PC 및 노트북
지원되는 입력 지원되는 모든 Windows 10 입력 지원되는 모든 Windows 10 입력 마우스 및 키보드 마우스 및 키보드
지원되는 Windows OS 버전 Windows 10, 버전 1809 이상 Windows 10, 버전 1703 이상 Windows XP 이상 Windows XP 이상
WebView 지원 Chromium 기반 WebView2 비 chromium WebView WebView2 지원 예정 WebView2 지원 예정
오픈 소스 서비스 예정 네 (.NET 6 이상만 해당) 네 (.NET 6 이상만 해당)

이러한 각 UI 프레임워크에 대한 자세한 내용은 다음 탭의 정보를 참조하세요.

Windows 앱 SDK (WinUI 3)

대부분의 새 Windows 앱의 경우 WinUI 3(Windows 앱 SDK)을 사용하여 WinUI를 사용하여 사용자 인터페이스를 빌드하는 것이 좋습니다. WinUI 3는 최신 UI(사용자 인터페이스) 패턴을 사용하여 일관되고 직관적이며 액세스 가능한 경험을 제공합니다.

WinUI 3은 Windows OS에서 완전히 분리되며 Windows 앱 개발 플랫폼의 다음 진화를 나타내는 도구 및 구성 요소 집합인 Windows App SDK의 일부로 제공합니다.

WinUI 3는 Windows UI 라이브러리의 최신 세대입니다. WinUI 2 및 3은 동일한 컨트롤, 스타일 및 기타 UI 기본 사항을 많이 공유합니다(WinUI 2 및 WinUI 3 비교 참조).

WinUI 3에서 사용하도록 설정된 주요 앱 시나리오

  • 다양한 최신 입력을 사용하여 다양한 최신 디바이스에서 실행해야 하는 최신 Windows 앱
  • C++로 작성된 데스크톱/Win32 앱
  • DirectX 및 Win2D를 활용하려는 그래픽이 많은 앱 또는 게임
  • 고성능이 필요한 통합 웹 콘텐츠가 많은 앱
  • Windows OS 및 기타 타사 Windows 앱에서 “적합한” 환경을 제공하려는 앱

WinUI 3에 대한 유용한 설명서