Obtenir la largeur / hauteur de la fenêtre dans les applications du magasin Windows

J’ai actuellement une page de base qui charge, et j’ai besoin d’un moyen d’obtenir la largeur et la hauteur de la fenêtre, de préférence dans le constructeur. Le problème est que, dans le constructeur, ou avant que la page ne soit complètement chargée, je n’arrive pas à obtenir la largeur et la hauteur. Une fois chargé, je peux simplement utiliser:

this.ActualWidth; this.ActualHeight; 

Existe-t-il un événement de fin de chargement de fenêtre que je peux utiliser ou un moyen d’obtenir la largeur et la hauteur lors du chargement?

Vous pouvez connaître la taille de la fenêtre à tout moment en utilisant la propriété Window.Current.Bounds . Pour plus de détails, lisez: Comment obtenir la résolution de l’écran? Pour une application WinRT?

Voici un article de blog sur la façon de gérer l’événement SizeChanged . Vous ne pouvez pas obtenir ActualWidth / ActualHeight sans effectuer une opération de ce type car ils sont calculés lors du rendu du contrôle.

 private void OnWindowSizeChanged(object sender, Windows.UI.Core.WindowSizeChangedEventArgs e) { var CurrentViewState = Windows.UI.ViewManagement.ApplicationView.Value; double AppWidth = e.Size.Width; double AppHeight = e.Size.Height; // DownloadImage requires accurate view state and app size! DownloadImage(CurrentViewState, AppHeight, AppWidth); } Window.Current.SizeChanged += OnWindowSizeChanged;