Est-il possible d'invoquer la fonction «Identify Monitors» à partir de C #?
-
07-07-2019 - |
Question
Je travaille sur une petite application WPF qui s'exécutera en plein écran et j'aimerais donner à l'utilisateur la possibilité de choisir le moniteur sur lequel il s'affichera. Pour faciliter l'identification de chaque moniteur de la liste, j'aimerais procéder de la même manière que "Identify Monitors" de la boîte de dialogue Paramètres d'affichage de Windows. bouton.
Est-il possible d'invoquer cette fonction en utilisant P / Invoke ou quelque chose de ce genre? Sinon, je peux toujours ouvrir une nouvelle fenêtre WPF sur chaque moniteur contenant un numéro, mais je ne veux pas réinventer la roue si elle est intégrée.
La solution
Il y a cette question - Dans un formulaire C #, comment identifier le moniteur sur lequel l’application est affichée - mais il vous demande d’identifier l’écran sur lequel l’application est en cours d’exécution, afin qu’il ne soit pas conforme à vos attentes. Cependant, la classe System.Windows.Forms.Screen
peut fournir les méthodes dont vous avez besoin.
Il a un tableau:
Sreeen[] AllScreens;
Bouclez sur le tableau et dessinez son index au centre du rectangle défini par Bounds
ou WorkingArea
.