Flyout クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
情報またはユーザー操作が必要な軽量 UI を表示するコントロールを表します。 ダイアログとは異なり、ポップアップは、その外側をクリックまたはタップするか、デバイスの [戻る] ボタンを押すか、または 'Esc' キーを押すことで、ライトを閉じることもできます。
/// [Microsoft.UI.Xaml.Markup.ContentProperty(Name="Content")]
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.WinUIContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class Flyout : FlyoutBase
[Microsoft.UI.Xaml.Markup.ContentProperty(Name="Content")]
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.UI.Xaml.WinUIContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public class Flyout : FlyoutBase
Public Class Flyout
Inherits FlyoutBase
<Flyout>
singleUIElement
</Flyout>
- 継承
- 属性
例
Tip
詳細、設計ガイダンス、およびコード例については、「 ポップアップ」を参照してください。
WinUI 3 ギャラリー アプリには、ほとんどの WinUI 3 コントロールと機能の対話型の例が含まれています。 Microsoft Store からアプリを入手するか、GitHub でソース コードを取得します。
注釈
ポップアップには、ユーザーの操作を必要とするメッセージが表示されます。
ポップアップ コントロールを使用して、情報を収集したり、詳細情報を表示したり、警告や確認を行ったりします。 ダイアログとは異なり、ポップアップは別のウィンドウを作成せず、他のユーザー操作をブロックしません。 項目のメニューを表示するには、代わりに MenuFlyout を使用します。 XAML やコード例など、詳細については、「 ポップアップ」を参照してください。
ポップアップ コントロール (または MenuFlyout) は、 Button.Flyout プロパティの値として使用されます。 これは通常、ページの UI 定義の一部として XAML で設定されます。 ボタン は、専用の Flyout プロパティを持つ唯一のコントロールです。 ポップアップを他のコントロールに関連付けるには、 FlyoutBase.AttachedFlyout 添付プロパティを使用します。 Button.Flyout に設定すると、ボタンがタップされたとき、またはその他の方法で呼び出されたときにポップアップが表示されます。 FlyoutBase.AttachedFlyout を使用してポップアップが他の UI 要素に割り当てられている場合は、ShowAt メソッドまたは静的 ShowAttachedFlyout メソッドを呼び出してポップアップを表示する必要があります。
このリファレンス トピックに記載されているメンバーに加えて、一般的な Flyout シナリオでよく使用される基底クラス FlyoutBase の他のメンバーもあります。
- FlyoutBase.AttachedFlyout: ポップアップを特定の UI 要素に関連付ける添付プロパティ (任意の FrameworkElement 派生クラスを指定できます)。
- ShowAttachedFlyout: FlyoutBase.AttachedFlyout の割り当てを通じて、ポップアップが UI 要素に既に関連付けられているかどうかを判断できる静的メソッドです。 その場合、メソッドは、指定した FrameworkElement を使用して内部的に ShowAt を呼び出します。
Accessibility
次に示すように、フォーカス可能なコンテンツのないポップアップ (テキストのみなど) を使用する場合は、コンテンツにアクセスできるようにするための追加の手順を実行する必要があります。 具体的には、Windowsナレーターや他のスクリーン リーダーがポップアップのコンテンツを読み取れるようにする必要があります。
既定では、 FlyoutPresenter にはフォーカスを受け取らないように設定されたプロパティがあります。 これは、ポップアップ内のコンテンツがフォーカスを受け取ることができる場合に必要な動作です。 ただし、Flyout 内のコンテンツがフォーカスを受け取ることができない場合は、 FlyoutPresenterStyle に更新して 、代わりに FlyoutPresenter にフォーカスを受け取らせる必要があります。 これを行うには、 UIElement.IsTabStop を true に設定し、 TabNavigation をフライアウト発表者スタイルで Cycle に設定します。
この例では、コンテンツにアクセスできるように 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 |
ポップアップの内容を取得または設定します。 |
| ContentProperty |
Content 依存関係プロパティの識別子を取得します。 |
| Dispatcher |
Windows アプリ SDK アプリで常に |
| DispatcherQueue |
このオブジェクトが関連付けられている |
| ElementSoundMode |
サウンドを再生するかどうかのコントロールの設定を指定する値を取得または設定します。 (継承元 FlyoutBase) |
| FlyoutPresenterStyle | |
| FlyoutPresenterStyleProperty |
FlyoutPresenterStyle 依存関係プロパティの識別子を取得します。 |
| InputDevicePrefersPrimaryCommands |
ポップアップを開くために使用する入力デバイスがセカンダリ コマンドを簡単に開かないかどうかを示す値を取得します。 (継承元 FlyoutBase) |
| IsConstrainedToRootBounds |
XAML ルートの境界内にポップアップが表示されるかどうかを示す値を取得します。 このプロパティは、Windows アプリ SDK アプリでは常に true です。 (継承元 FlyoutBase) |
| IsOpen |
ポップアップが開いているかどうかを示す値を取得します。 (継承元 FlyoutBase) |
| LightDismissOverlayMode |
ライト 無視 UI の外側の領域を暗くするかどうかを指定する値を取得または設定します。 (継承元 FlyoutBase) |
| OverlayInputPassThroughElement |
ポップアップのオーバーレイの下にある場合でもポインター入力イベントを受け取る要素を取得または設定します。 (継承元 FlyoutBase) |
| Placement |
ポップアップの配置ターゲットに関連して、ポップアップに使用する既定の配置を取得または設定します。 (継承元 FlyoutBase) |
| ShouldConstrainToRootBounds |
XAML ルートの境界内にポップアップを表示するかどうかを示す値を取得または設定します。 (継承元 FlyoutBase) |
| ShowMode |
ポップアップが表示されたときの動作を示す値を取得または設定します。 (継承元 FlyoutBase) |
| SystemBackdrop |
このポップアップに適用するシステム背景を取得または設定します。 背景はポップアップ コンテンツの背後にレンダリングされます。 (継承元 FlyoutBase) |
| Target |
ポップアップの配置ターゲットとして使用する要素を取得します。 (継承元 FlyoutBase) |
| XamlRoot |
このポップアップを表示する XamlRoot を取得または設定します。 (継承元 FlyoutBase) |
メソッド
イベント
| 名前 | 説明 |
|---|---|
| Closed |
ポップアップが非表示のときに発生します。 (継承元 FlyoutBase) |
| Closing |
ポップアップが非表示になり始めると発生します。 (継承元 FlyoutBase) |
| Opened |
ポップアップが表示されたときに発生します。 (継承元 FlyoutBase) |
| Opening |
ポップアップが表示される前に発生します。 (継承元 FlyoutBase) |