Flyout 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
정보이거나 사용자 상호 작용이 필요한 경량 UI를 표시하는 컨트롤을 나타냅니다. 대화 상자와 달리 플라이아웃은 외부를 클릭하거나 탭하거나 디바이스의 뒤로 단추를 누르거나 'Esc' 키를 눌러 가볍게 해제할 수 있습니다.
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.UI.Xaml.Markup.ContentProperty(Name="Content")]
class Flyout : FlyoutBase
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.UI.Xaml.Markup.ContentProperty(Name="Content")]
public class Flyout : FlyoutBase
Public Class Flyout
Inherits FlyoutBase
<Flyout>
singleUIElement
</Flyout>
- 상속
- 특성
Windows 요구 사항
| 디바이스 패밀리 |
Windows 10 (10.0.10240.0에서 도입되었습니다.)
|
| API contract |
Windows.Foundation.UniversalApiContract (v1.0에서 도입되었습니다.)
|
예제
설명
플라이아웃은 사용자 상호 작용이 필요한 메시지를 표시합니다.
플라이아웃 컨트롤을 사용하여 정보를 수집하거나, 자세한 정보를 표시하거나, 경고 및 확인을 할 수 있습니다. 대화 상자와 달리 플라이아웃은 별도의 창을 만들지 않으며 다른 사용자 상호 작용을 차단하지 않습니다. 항목 메뉴를 표시하려면 대신 사용합니다 MenuFlyout . XAML 및 코드 예제를 비롯한 자세한 내용은 빠른 시작: 플라이아웃 추가를 참조하세요.
플라이아웃 컨트롤(또는 MenuFlyout)은 속성 값 Button.Flyout 으로 사용됩니다. 일반적으로 페이지의 UI 정의의 일부로 XAML에서 설정됩니다. Button 은 전용 Flyout 속성이 있는 유일한 컨트롤입니다. 플라이아웃을 다른 컨트롤과 연결하려면 FlyoutBase.AttachedFlyout 연결된 속성을 사용합니다. 단추를 탭 Button.Flyout하거나 호출하면 플라이아웃이 표시됩니다. FlyoutBase.AttachedFlyout을 사용하여 플라이아웃이 다른 UI 요소에 할당되면 플라이아웃을 표시하기 위해 메서드 또는 정적 ShowAttachedFlyout 메서드를 호출 ShowAt 해야 합니다.
이 참조 항목에 나열된 멤버 외에도 일반적인 플라이아웃 시나리오에서 자주 사용되는 기본 클래스 FlyoutBase 의 다른 멤버가 있습니다.
- FlyoutBase.AttachedFlyout: 플라이아웃을 특정 UI 요소와 연결하는 연결된 속성입니다(모든 FrameworkElement 파생 클래스일 수 있음).
- ShowAttachedFlyout: FlyoutBase.AttachedFlyout 할당을 통해 플라이아웃이 이미 UI 요소와 연결되어 있는지 여부를 확인할 수 있는 정적 메서드입니다. 이 경우 메서드는 사용자가 지정한 것을 사용하여 FrameworkElement 내부적으로 호출 ShowAt 합니다.
액세스 가능성
여기에 표시된 것처럼 포커스가 있는 콘텐츠가 없는 플라이아웃(예: 텍스트만 포함)을 사용하는 경우 콘텐츠에 액세스할 수 있도록 몇 가지 추가 단계를 수행해야 합니다. 특히 Windows 내레이터 또는 다른 화면 읽기 프로그램이 플라이아웃의 콘텐츠를 읽을 수 있는지 확인해야 합니다.
기본적으로 포커스를 받지 못하게 하는 속성이 설정 FlyoutPresenter 됩니다. 플라이아웃 내의 콘텐츠가 포커스를 받을 수 있는 경우 원하는 동작입니다. 그러나 플라이아웃 내의 콘텐츠가 포커스를 받을 수 없는 경우 포커스를 받을 수 있도록 FlyoutPresenter 업데이트 FlyoutPresenterStyle 해야 합니다. 이렇게 하려면 true TabNavigation 로 설정하고 IsTabStop 플라이아웃 발표자 스타일에서 순환 합니다.
이 예제에서는 콘텐츠에 FlyoutPresenter 액세스할 수 있도록 수신 포커스를 허용 하는 방법을 보여 주세요.
<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
<Button VerticalAlignment="Center" HorizontalAlignment="Center"
Content="Open flyout">
<Button.Flyout>
<Flyout>
<Flyout.FlyoutPresenterStyle>
<Style TargetType="FlyoutPresenter">
<Setter Property="ScrollViewer.HorizontalScrollMode" Value="Disabled"/>
<Setter Property="ScrollViewer.HorizontalScrollBarVisibility" Value="Disabled"/>
<Setter Property="IsTabStop" Value="True"/>
<Setter Property="TabNavigation" Value="Cycle"/>
</Style>
</Flyout.FlyoutPresenterStyle>
<TextBlock TextWrapping="Wrap" Text="This is some text in a flyout."/>
</Flyout>
</Button.Flyout>
</Button>
</Grid>
생성자
| Flyout() |
Flyout 클래스의 새 인스턴스를 초기화합니다. |
속성
| AllowFocusOnInteraction |
사용자가 상호 작용할 때 요소가 자동으로 포커스를 받는지 여부를 나타내는 값을 가져오거나 설정합니다. (다음에서 상속됨 FlyoutBase) |
| AllowFocusWhenDisabled |
컨트롤이 비활성화될 때 포커스를 받을 수 있는지 여부를 지정하는 값을 가져오거나 설정합니다. (다음에서 상속됨 FlyoutBase) |
| AreOpenCloseAnimationsEnabled |
플라이아웃을 열거나 닫을 때 애니메이션이 재생되는지 여부를 나타내는 값을 가져오거나 설정합니다. (다음에서 상속됨 FlyoutBase) |
| Content |
의 내용을 Flyout가져오거나 설정합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.Controls.Flyout.Content(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). |
| ContentProperty |
종속성 속성의 Content 식별자를 가져옵니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.Controls.Flyout.ContentProperty(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). |
| Dispatcher |
이 개체가 CoreDispatcher 연결된 개체를 가져옵니다. 코드 CoreDispatcher 가 비 UI 스레드에서 시작되는 경우에도 UI 스레드에 액세스할 DependencyObject 수 있는 기능을 나타냅니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.DependencyObject.Dispatcher(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 DependencyObject) |
| ElementSoundMode |
소리를 재생하는지 여부에 대한 컨트롤의 기본 설정을 지정하는 값을 가져오거나 설정합니다. (다음에서 상속됨 FlyoutBase) |
| FlyoutPresenterStyle |
콘텐츠에 적용된 Style 내용을 Flyout 가져오거나 설정합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.Controls.Flyout.FlyoutPresenterStyle(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). |
| FlyoutPresenterStyleProperty |
종속성 속성의 FlyoutPresenterStyle 식별자를 가져옵니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.Controls.Flyout.FlyoutPresenterStyleProperty(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). |
| InputDevicePrefersPrimaryCommands |
플라이아웃을 여는 데 사용되는 입력 디바이스가 보조 명령을 쉽게 열지 않는지 여부를 나타내는 값을 가져옵니다. (다음에서 상속됨 FlyoutBase) |
| IsConstrainedToRootBounds |
플라이아웃이 XAML 루트의 범위 내에 표시되는지 여부를 나타내는 값을 가져옵니다. (다음에서 상속됨 FlyoutBase) |
| IsOpen |
플라이아웃이 열려 있는지 여부를 나타내는 값을 가져옵니다. (다음에서 상속됨 FlyoutBase) |
| LightDismissOverlayMode |
밝은 해제 UI 외부 영역이 어둡게 표시되는지 여부를 지정하는 값을 가져오거나 설정합니다. (다음에서 상속됨 FlyoutBase) |
| OverlayInputPassThroughElement |
플라이아웃 오버레이 아래에 있는 경우에도 포인터 입력 이벤트를 수신해야 하는 요소를 가져오거나 설정합니다. (다음에서 상속됨 FlyoutBase) |
| Placement |
플라이아웃의 배치 대상과 관련하여 플라이아웃에 사용할 기본 배치를 가져오거나 설정합니다. (다음에서 상속됨 FlyoutBase) |
| ShouldConstrainToRootBounds |
플라이아웃이 XAML 루트의 범위 내에 표시되어야 하는지 여부를 나타내는 값을 가져오거나 설정합니다. (다음에서 상속됨 FlyoutBase) |
| ShowMode |
플라이아웃이 표시되면 동작하는 방식을 나타내는 값을 가져오거나 설정합니다. (다음에서 상속됨 FlyoutBase) |
| Target |
플라이아웃의 배치 대상으로 사용할 요소를 가져옵니다. (다음에서 상속됨 FlyoutBase) |
| XamlRoot |
이 플라이아웃을 볼 XamlRoot를 가져오거나 설정합니다. (다음에서 상속됨 FlyoutBase) |
메서드
이벤트
| Closed |
플라이아웃이 숨겨져 있을 때 발생합니다. (다음에서 상속됨 FlyoutBase) |
| Closing |
플라이아웃이 숨겨질 때 발생합니다. (다음에서 상속됨 FlyoutBase) |
| Opened |
플라이아웃이 표시되면 발생합니다. (다음에서 상속됨 FlyoutBase) |
| Opening |
플라이아웃이 표시되기 전에 발생합니다. (다음에서 상속됨 FlyoutBase) |
적용 대상
추가 정보
피드백
다음에 대한 사용자 의견 제출 및 보기