废话不多说,直接上代码
var wkk = System.Windows.Forms.Screen.GetWorkingArea(new Point((int)this.Left, (int)this.Top));
现在大部分人都是多个显示器办公,那么当wpf客户端在不同的显示器,恰巧不同的显示器还是不同的尺寸的时候,有时候我们就需要获取到程序所在的显示屏幕大小.
通常使用Screen.GetPrimaryArea获取到的是主显示器的工作区域,如果多个显示器,并且程序所在位置处于非主显示器时,这么写就会有问题了.
获取当前窗体的Left和Top属性,调用GetWorkingArea便可以.
GetWorkingArea有很多的重载函数,总有一款适合你.
有趣的是,在多个显示器里窗体的Left属性是相对于主显示器的,比如有两个显示器,左右摆放

右边的显示器是主,左边的显示器为扩展显示.
那么窗体的Left属性是负数的.
通过这个负数就能够定位到当前窗体所在的显示器在哪儿了!
如果对你有帮助别忘了点赞哦

本文探讨如何在多显示器环境中,利用WPF程序定位到非主显示器的窗口大小,并通过Window.Left属性的负数特征确定其所在显示器。适用于开发者解决多显示器布局问题。
465

被折叠的 条评论
为什么被折叠?



