AppWindow Classe

Définition

Représente un conteneur géré par le système pour le contenu d’une application.

public ref class AppWindow sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 524288)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class AppWindow final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 524288)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class AppWindow
Public NotInheritable Class AppWindow
Héritage
Object Platform::Object IInspectable AppWindow
Attributs

Configuration requise pour Windows

Famille d’appareils
Windows 10, version 1903 (introduit dans 10.0.18362.0)
API contract
Windows.Foundation.UniversalApiContract (introduit dans v8.0)

Remarques

Notes

AppWindow est actuellement disponible en préversion. Dès lors, vous pouvez soumettre des applications utilisant AppWindow sur le Microsoft Store, mais certains composants de plateforme et d'infrastructure peuvent ne pas fonctionner avec AppWindow (voir Limitations).

Un AppWindow peut être utilisé pour représenter une partie affichée d’une application Windows Runtime lorsqu’elle a plusieurs fenêtres. Elle est similaire à une classe ApplicationView d’un point de vue conceptuel, mais pas en ce qui concerne le comportement et la durée de vie.

Contrairement à ApplicationView, chaque AppWindow n’a pas de CoreWindow correspondant. Ils partagent tous le même thread de traitement de l’interface utilisateur (y compris le répartiteur d’événements) à partir duquel ils ont été créés.

Pour obtenir un objet de ce type, appelez AppWindow.TryCreateAsync.

Pour connecter du contenu à votre AppWindow, appelez ElementCompositionPreview.SetAppWindowContent.

Vous pouvez connecter uniquement du contenu XAML à votre AppWindow. Le contenu holographique ou DirectX natif n’est pas pris en charge.

Pour spécifier une taille minimale préférée pour la fenêtre d’application, utilisez la méthode WindowManagementPreview.SetPreferredMinSize .

Conseil

Pour plus d’informations et de code illustrant AppWindow, consultez Afficher plusieurs vues pour une application et Afficher plusieurs vues avec AppWindow.

Un exemple montrant comment utiliser l’API AppWindow se trouve dans le référentiel Exemples universels Windows sur GitHub sous Exemples/AppWindow.

Limites

Les limitations de la préversion actuelle d’AppWindow incluent (liste non exhaustive) :

  • Toute API qui utilise le modèle GetForCurrentView ne fonctionne pas pour AppWindow, car CurrentView fait référence à ApplicationView qui est une entité distincte de l’AppWindow.
  • La lecture multimédia en plein écran n’est pas disponible dans MediaElement ou MediaPlayerElement.
  • MessageDialog ne sera pas modal pour la fenêtre appropriée. Il est recommandé d’utiliser ContentDialog à la place.
  • WebView n’est pas entièrement pris en charge. Vous pouvez utiliser un WebView in-proc, mais tout ce qui n’est pas du contenu HTML statique peut ou ne pas fonctionner correctement.
  • Si vous définissez la propriété Window.Current.Content en XAML, elle détruit tout le contenu XAML de votre AppWindow. Évitez d’utiliser ce modèle pour réinitialiser votre contenu lors de la suspension de votre application si vous utilisez AppWindow.
  • Le redimensionnement de fenêtre lisse ne fonctionne pas pour AppWindows. Le cadre et le contenu seront redimensionnés indépendamment, ce qui peut paraître non poli lorsque la disposition du contenu est lente.
  • DisplayInformation n’est pas accessible pour AppWindow. Si votre AppWindow se trouve sur un moniteur différent de celui de votre ApplicationView, vous ne pourrez pas interroger les informations d’affichage correctes.
  • UserInteractionMode ne peut pas être défini pour un AppWindow.
  • Les boîtes de dialogue d’impression (2D et 3D) ne seront pas parentées dans la fenêtre appropriée.
  • AppWindow ne peut pas détecter quand des mouvements de périphérie sont appelés.
  • AppWindow ne peut pas être utilisé pour satisfaire une demande d’activation via ActivationViewSwitcher.

Propriétés

Content

Obtient le contenu de l’application actuellement attaché à la fenêtre.

DispatcherQueue

Obtient la file d’attente du répartiteur pour la fenêtre d’application.

Frame

Obtient le cadre de la fenêtre d’application.

IsVisible

Obtient une valeur qui indique si la fenêtre peut être affichée sur un affichage.

PersistedStateId

Obtient ou définit une chaîne qui identifie cette fenêtre pour le suivi et l’état d’enregistrement.

Presenter

Obtient le présentateur de la fenêtre d’application.

Title

Obtient ou définit le titre affiché de la fenêtre d’application.

TitleBar

Obtient la barre de titre de la fenêtre d’application.

UIContext

Obtient le contexte de l’interface utilisateur pour la fenêtre d’application.

WindowingEnvironment

Obtient l’environnement de fenêtrage de la fenêtre d’application.

Méthodes

ClearAllPersistedState()

Efface toutes les propriétés que le système a enregistrées pour n’importe quelle fenêtre PersistedStateId pour l’application donnée.

ClearPersistedState(String)

Efface toutes les propriétés que le système a enregistrées pour la fenêtre avec l’ID spécifié pour l’application donnée.

CloseAsync()

Ferme la fenêtre de l’application.

GetDisplayRegions()

Retourne la collection de régions d’affichage disponibles pour la fenêtre d’application.

GetPlacement()

Renvoie un objet de placement qui décrit la région d’affichage, le décalage et la taille de la fenêtre d’application.

RequestMoveAdjacentToCurrentView()

Effectue une demande de positionnement de la fenêtre en regard de l’affichage actuel.

RequestMoveAdjacentToWindow(AppWindow)

Effectue une demande de positionnement de la fenêtre en regard de la fenêtre d’ancrage spécifiée.

RequestMoveRelativeToCurrentViewContent(Point)

Effectue une demande de positionnement de la fenêtre au décalage spécifié par rapport à l’affichage actuel.

RequestMoveRelativeToDisplayRegion(DisplayRegion, Point)

Effectue une demande de positionnement de la fenêtre dans la région d’affichage spécifiée au décalage spécifié.

RequestMoveRelativeToWindowContent(AppWindow, Point)

Effectue une demande de positionnement de la fenêtre au décalage spécifié par rapport à la fenêtre d’ancrage.

RequestMoveToDisplayRegion(DisplayRegion)

Effectue une demande de positionnement de la fenêtre dans la région d’affichage spécifiée.

RequestSize(Size)

Effectue une demande de définition de la fenêtre sur la taille spécifiée.

TryCreateAsync()

Tente de créer de manière asynchrone une instance d’AppWindow.

TryShowAsync()

Tentatives d’affichage asynchrone de la fenêtre d’application active.

Événements

Changed

Se produit lorsqu’une propriété de la fenêtre d’application a été modifiée.

Closed

Se produit lorsque la fenêtre d’application a été fermée.

CloseRequested

Se produit après la fermeture de la fenêtre, mais avant qu’elle ne soit fermée et avant que l’événement Fermé se produise.

S’applique à