Maison >développement back-end >C++ >Comment obtenir les dimensions de l'écran actif dans WPF ?

Comment obtenir les dimensions de l'écran actif dans WPF ?

Susan Sarandon
Susan Sarandonoriginal
2025-01-05 14:49:41747parcourir

How to Get the Active Screen's Dimensions in WPF?

Comment obtenir les dimensions de l'écran actuellement actif dans WPF

Dans le domaine des configurations multi-écrans, il devient crucial de déterminer avec précision déterminer la taille de l'écran sur lequel une application est affichée. Bien que WPF donne accès aux dimensions de l'écran principal via SystemParameters.PrimaryScreenWidth et SystemParameters.PrimaryScreenHeight, cela peut ne pas toujours suffire.

Pour résoudre cette limitation, une solution personnalisée peut être implémentée à l'aide de la classe Screen de System.Windows. Espace de noms .Forms. Cette approche offre la possibilité de récupérer la taille de l'écran à partir du code XAML ou C#.

L'extrait de code ci-dessous encapsule la fonctionnalité dans une classe C# :

public class WpfScreen
{
    // ... (class definition and methods)
}

Utilisation :

  • XAML : Accès à l'écran actuel Les dimensions de XAML ne sont pas directement disponibles via cette classe.
  • C# : Utilisez les méthodes suivantes pour obtenir la taille de l'écran :

    • WpfScreen.AllScreens () renvoie une liste de tous les disponibles écrans.
    • WpfScreen.GetScreenFrom(Window) récupère l'écran sur lequel une fenêtre spécifiée est affichée.
    • WpfScreen.GetScreenFrom(Point) renvoie l'écran qui contient un point spécifique.
    • WpfScreen.Primary donne accès au primaire écran.

Exemple :

WpfScreen currentScreen = WpfScreen.GetScreenFrom(Window.GetWindow(this));

double screenWidth = currentScreen.DeviceBounds.Width;
double screenHeight = currentScreen.DeviceBounds.Height;

Cette classe fournit un moyen pratique de déterminer les dimensions de l'écran actif, permettant placement précis des applications et ajustements de taille dans des environnements multi-moniteurs.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn