1. ホーム
  2. c#

[解決済み] WPFで現在の画面の大きさを取得するには?

2023-01-21 22:26:47

質問

主画面の大きさを知るには

System.Windows.SystemParameters.PrimaryScreenWidth;
System.Windows.SystemParameters.PrimaryScreenHeight;

しかし、現在の画面のサイズはどのように取得すればよいのでしょうか(マルチスクリーンのユーザーは常にプライマリ画面を使用するとは限らず、すべての画面が同じ解像度を使用しているとは限りませんよね?)。

XAML からサイズにアクセスできるのは良いことですが、コード (C#) からそうすることで十分です。

どのように解決するのですか?

私の知る限り、現在のモニターの寸法を取得するためのネイティブのWPF関数はありません。代わりに、ネイティブの PInvoke マルチディスプレイモニタ関数 を呼び出し、それらをマネージドクラスでラップし、XAMLからそれらを消費するために必要なすべてのプロパティを公開します。