Window.SizeChanged Événement
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.
Se produit lorsque la fenêtre d’application a été rendue pour la première fois ou que sa taille de rendu a changé.
// Register
event_token SizeChanged(TypedEventHandler<IInspectable, WindowSizeChangedEventArgs const&> const& handler) const;
// Revoke with event_token
void SizeChanged(event_token const* cookie) const;
// Revoke with event_revoker
Window::SizeChanged_revoker SizeChanged(auto_revoke_t, TypedEventHandler<IInspectable, WindowSizeChangedEventArgs const&> const& handler) const;
public event TypedEventHandler<object,WindowSizeChangedEventArgs> SizeChanged;
function onSizeChanged(eventArgs) { /* Your code */ }
window.addEventListener("sizechanged", onSizeChanged);
window.removeEventListener("sizechanged", onSizeChanged);
- or -
window.onsizechanged = onSizeChanged;
Public Custom Event SizeChanged As TypedEventHandler(Of Object, WindowSizeChangedEventArgs)
Type d'événement
TypedEventHandler<IInspectable,WindowSizeChangedEventArgs>
Remarques
Cet événement se produit chaque fois qu’il y a des modifications dans les valeurs limites de la fenêtre d’application. Cela peut être dû au fait que l’utilisateur redimensionne votre application ou modifie l’orientation de l’affichage. Un autre déclencheur est si l’utilisateur déplace votre application vers un nouvel affichage qui a une résolution différente et que la fenêtre de l’application se développe pour la remplir.
Window.SizeChanged
est l’événement à gérer pour détecter que l’utilisateur a délibérément redimensionné votre application ou fait pivoter l’affichage sur un PC qui détecte l’orientation. Vous pouvez détecter que la fenêtre de l’application a changé d’orientation paysage à portrait ou vice versa. L’orientation de la fenêtre d’application peut influencer la façon dont vous souhaitez que les contrôles individuels dans la fenêtre d’application s’affichent. Par exemple, vous souhaiterez peut-être afficher des listes de données dans un ListView pour l’orientation portrait, mais dans un GridView pour l’orientation paysage. En règle générale, vous comparez le ratio de Window.Current.Bounds.Width
à Window.Current.Bounds.Height
afin de déterminer l’orientation en fonction des limites, et vous le feriez chaque fois que Window.SizeChanged
se déclenche. La façon dont vous interprétez les ratios largeur/hauteur vous appartient.
Si vous attachez des gestionnaires pour Window.SizeChanged
au niveau de la page dans un gestionnaire pour l’événement FrameworkElement.Loaded , vous devez détacher ces gestionnaires dans un gestionnaire d’événements FrameworkElement.Unloaded de cette page. Le instance Window.Current reste actif entre les navigations de page et doit avoir un gestionnaire actif uniquement pour le code de page le plus actuel.
Un Window.SizeChanged
gestionnaire n’est pas la façon dont vous appliquez la taille minimale à laquelle votre application peut être redimensionnée. Cela est contrôlé par le manifeste de l’application. Toutefois, votre logique de modification des états visuels doit être en mesure de charger un état conçu pour la largeur minimale que vous avez prévue, et vous utiliseriez généralement les valeurs limites et Window.SizeChanged
la gestion pour détecter quand la fenêtre d’application utilise la largeur minimale.
Pour plus d’informations sur l’utilisation de Window.SizeChanged pour détecter les modifications dans l’environnement de fenêtre d’application et charger les états visuels appropriés pour votre application, consultez Dispositions réactives avec XAML.
Il existe un autre événement nommé SizeChanged qui existe sur les types dérivés FrameworkElement (Window n’est pas un type FrameworkElement ).
Les événements FrameworkElement.SizeChanged peuvent se déclencher dans un grand nombre des mêmes circonstances que celles qui provoquent Window.SizeChanged
le déclenchement. Une modification de la taille de la fenêtre d’application peut entraîner la modification de la taille de l’élément visuel racine (généralement une page ou un panneau). Cela déclenche une cascade d’invalidations de disposition pour tous les sous-éléments qui utilisent la disposition adaptative pour remplir l’espace disponible. Chaque élément qui a de nouvelles dimensions en raison d’une passe de disposition déclenche son propre événement FrameworkElement.SizeChanged .