Flyout Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Représente un contrôle qui affiche une interface utilisateur légère qui est soit des informations, soit nécessite une interaction utilisateur. Contrairement à une boîte de dialogue, un menu volant peut être légèrement ignoré en cliquant ou appuyant en dehors de celui-ci, en appuyant sur le bouton Précédent de l’appareil ou en appuyant sur la touche « Échap ».
/// [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>
- Héritage
- Attributs
Configuration requise pour Windows
Famille d’appareils |
Windows 10 (introduit dans 10.0.10240.0)
|
API contract |
Windows.Foundation.UniversalApiContract (introduit dans v1.0)
|
Exemples
Conseil
Pour plus d’informations, des conseils de conception et des exemples de code, consultez Flyouts.
L’application WinUI 2 Gallery comprend des exemples interactifs de la plupart des contrôles et fonctionnalités WinUI 2. Procurez-vous l’application sur le Microsoft Store ou le code source sur GitHub.
Remarques
Un menu volant affiche un message qui nécessite une interaction de l’utilisateur.
Utilisez un contrôle Flyout pour collecter des informations, afficher plus d’informations ou pour des avertissements et des confirmations. Contrairement à une boîte de dialogue, un menu volant ne crée pas de fenêtre distincte et ne bloque pas d’autres interactions utilisateur. Pour afficher un menu d’éléments, utilisez un MenuFlyout à la place. Pour plus d’informations, y compris des exemples XAML et de code, consultez Démarrage rapide : Ajout d’un menu volant.
Un contrôle Flyout (ou MenuFlyout) est utilisé comme valeur de la propriété Button.Flyout . Cette valeur est généralement définie en XAML dans le cadre d’une définition d’interface utilisateur de la page. Button est le seul contrôle qui a une propriété Flyout dédiée. Pour associer un flyout à d’autres contrôles, utilisez la propriété jointe FlyoutBase.AttachedFlyout . Lorsqu’il est défini sur Button.Flyout, le menu volant s’affiche lorsque le bouton est appuyé ou appelé. Lorsqu’un flyout est affecté à d’autres éléments d’interface utilisateur à l’aide de FlyoutBase.AttachedFlyout, vous devez appeler la méthode ShowAt ou la méthode statique ShowAttachedFlyout pour afficher le menu volant.
Outre les membres répertoriés dans cette rubrique de référence, il existe d’autres membres de la classe de base FlyoutBase qui sont souvent utilisés dans les scénarios de flyout classiques :
- FlyoutBase.AttachedFlyout : propriété jointe qui associe un Flyout à un élément d’interface utilisateur particulier (il peut s’agir de n’importe quelle classe dérivée de FrameworkElement ).
- ShowAttachedFlyout : méthode statique qui peut déterminer si un menu volant est déjà associé à un élément d’interface utilisateur via une affectation FlyoutBase.AttachedFlyout . Si c’est le cas, la méthode appelle ShowAt en interne, à l’aide du FrameworkElement que vous avez spécifié.
Accessibilité
Si vous utilisez un menu volant sans contenu focalisable(par exemple, avec uniquement du texte, comme indiqué ici), vous devez prendre des mesures supplémentaires pour vous assurer que votre contenu est accessible. Plus précisément, vous devez vous assurer que le Narrateur Windows ou d’autres lecteurs d’écran peuvent lire le contenu du menu volant.
Par défaut, il existe des propriétés définies sur FlyoutPresenter qui l’empêchent de recevoir le focus. Il s’agit du comportement souhaité lorsque le contenu du menu volant peut recevoir le focus. Toutefois, si le contenu du flyout ne peut pas recevoir le focus, vous devez mettre à jour vers flyoutPresenterStyle pour permettre au FlyoutPresenter de recevoir le focus à la place. Pour ce faire, définissez IsTabStop sur true et TabNavigation sur Cycle sur le style de présentateur de menu volant.
Cet exemple montre comment laisser flyoutPresenter recevoir le focus afin que le contenu soit accessible.
<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>
Constructeurs
Flyout() |
Initialise une nouvelle instance de la classe Flyout. |
Propriétés
AllowFocusOnInteraction |
Obtient ou définit une valeur qui indique si l’élément obtient automatiquement le focus lorsque l’utilisateur interagit avec lui. (Hérité de FlyoutBase) |
AllowFocusWhenDisabled |
Obtient ou définit une valeur qui spécifie si le contrôle peut recevoir le focus lorsqu’il est désactivé. (Hérité de FlyoutBase) |
AreOpenCloseAnimationsEnabled |
Obtient ou définit une valeur qui indique si les animations sont lues lorsque le menu volant est ouvert ou fermé. (Hérité de FlyoutBase) |
Content |
Obtient ou définit le contenu du menu volant. |
ContentProperty |
Obtient l’identificateur de la propriété de dépendance Content . |
Dispatcher |
Obtient le CoreDispatcher auquel cet objet est associé. CoreDispatcher représente une installation qui peut accéder à DependencyObject sur le thread d’interface utilisateur, même si le code est initié par un thread autre que l’interface utilisateur. (Hérité de DependencyObject) |
ElementSoundMode |
Obtient ou définit une valeur qui spécifie la préférence du contrôle pour savoir s’il lit des sons. (Hérité de FlyoutBase) |
FlyoutPresenterStyle |
Obtient ou définit le style appliqué au contenu du menu volant . |
FlyoutPresenterStyleProperty |
Obtient l’identificateur de la propriété de dépendance FlyoutPresenterStyle . |
InputDevicePrefersPrimaryCommands |
Obtient une valeur qui indique si le périphérique d’entrée utilisé pour ouvrir le menu volant n’ouvre pas facilement les commandes secondaires. (Hérité de FlyoutBase) |
IsConstrainedToRootBounds |
Obtient une valeur qui indique si le menu volant est affiché dans les limites de la racine XAML. (Hérité de FlyoutBase) |
IsOpen |
Obtient une valeur qui indique si le menu volant est ouvert. (Hérité de FlyoutBase) |
LightDismissOverlayMode |
Obtient ou définit une valeur qui spécifie si la zone située à l’extérieur d’une interface utilisateur light-dismiss est assombrie. (Hérité de FlyoutBase) |
OverlayInputPassThroughElement |
Obtient ou définit un élément qui doit recevoir des événements d’entrée de pointeur, même sous la superposition du menu volant. (Hérité de FlyoutBase) |
Placement |
Obtient ou définit le placement par défaut à utiliser pour le menu volant, par rapport à sa cible de placement. (Hérité de FlyoutBase) |
ShouldConstrainToRootBounds |
Obtient ou définit une valeur qui indique si le menu volant doit être affiché dans les limites de la racine XAML. (Hérité de FlyoutBase) |
ShowMode |
Obtient ou définit une valeur qui indique le comportement d’un menu volant lorsqu’il est affiché. (Hérité de FlyoutBase) |
Target |
Obtient l’élément à utiliser comme cible de placement du menu volant. (Hérité de FlyoutBase) |
XamlRoot |
Obtient ou définit le XamlRoot dans lequel ce menu volant est en cours d’affichage. (Hérité de FlyoutBase) |
Méthodes
ClearValue(DependencyProperty) |
Efface la valeur locale d’une propriété de dépendance. (Hérité de DependencyObject) |
CreatePresenter() |
En cas de substitution dans une classe dérivée, initialise un contrôle pour afficher le contenu du menu volant approprié pour le contrôle dérivé. Remarque : Cette méthode n’a pas d’implémentation de classe de base et doit être remplacée dans une classe dérivée. (Hérité de FlyoutBase) |
GetAnimationBaseValue(DependencyProperty) |
Retourne toute valeur de base établie pour une propriété de dépendance, qui s’applique dans les cas où une animation n’est pas active. (Hérité de DependencyObject) |
GetValue(DependencyProperty) |
Retourne la valeur effective actuelle d’une propriété de dépendance à partir d’un objet DependencyObject. (Hérité de DependencyObject) |
Hide() |
Ferme le menu volant. (Hérité de FlyoutBase) |
OnProcessKeyboardAccelerators(ProcessKeyboardAcceleratorEventArgs) |
Appelé juste avant qu’un raccourci clavier (accélérateur) ne soit traité dans votre application. Appelé chaque fois que le code d’application ou les processus internes appellent ProcessKeyboardAccelerators. Remplacez cette méthode pour influencer la gestion de l’accélérateur par défaut. (Hérité de FlyoutBase) |
ReadLocalValue(DependencyProperty) |
Retourne la valeur locale d’une propriété de dépendance, si une valeur locale est définie. (Hérité de DependencyObject) |
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback) |
Inscrit une fonction de notification pour écouter les modifications apportées à un DependencyProperty spécifique sur ce instance DependencyObject. (Hérité de DependencyObject) |
SetValue(DependencyProperty, Object) |
Définit la valeur locale d’une propriété de dépendance sur un DependencyObject. (Hérité de DependencyObject) |
ShowAt(DependencyObject, FlyoutShowOptions) |
Affiche le menu volant placé par rapport à l’élément spécifié à l’aide des options spécifiées. (Hérité de FlyoutBase) |
ShowAt(FrameworkElement) |
Affiche le menu volant placé par rapport à l’élément spécifié. (Hérité de FlyoutBase) |
TryInvokeKeyboardAccelerator(ProcessKeyboardAcceleratorEventArgs) |
Tente d’appeler un raccourci clavier (accélérateur). (Hérité de FlyoutBase) |
UnregisterPropertyChangedCallback(DependencyProperty, Int64) |
Annule une notification de modification précédemment inscrite en appelant RegisterPropertyChangedCallback. (Hérité de DependencyObject) |
Événements
Closed |
Se produit lorsque le menu volant est masqué. (Hérité de FlyoutBase) |
Closing |
Se produit lorsque le menu volant commence à être masqué. (Hérité de FlyoutBase) |
Opened |
Se produit lorsque le menu volant s’affiche. (Hérité de FlyoutBase) |
Opening |
Se produit avant l’affichage du menu volant. (Hérité de FlyoutBase) |