小编典典

如何获得有效的屏幕尺寸?

c#

我正在寻找的是System.Windows.SystemParameters.WorkArea与窗口当前处于打开状态的显示器等效的显示器。

澄清: 相关窗口WPF不是WinForm


阅读 286

收藏
2020-05-19

共1个答案

小编典典

Screen.FromControlScreen.FromPointScreen.FromRectangle应对此有所帮助。例如,在WinForms中,它将是:

class MyForm : Form
{
  public Rectangle GetScreen()
  {
    return Screen.FromControl(this).Bounds;
  }
}

我不知道WPF的等效要求。因此,您需要执行类似此扩展方法的操作。

static class ExtensionsForWPF
{
  public static System.Windows.Forms.Screen GetScreen(this Window window)
  {
    return System.Windows.Forms.Screen.FromHandle(new WindowInteropHelper(window).Handle);
  }
}
2020-05-19