Windowsフォームアプリによる電源の状況の把握

Windows API Code Packによるアプリ開発 番外編
Windowsフォームアプリによる電源の状況の把握

マイクロソフトの田中達彦です。
Windows API Code Packによる電源の状況の把握の記事で、Windowsフォームでも電源の状況を検知する機能があると書いたので、その方法を紹介します。

電源がACアダプターにつながっているか、バッテリーで稼働しているかを検知するには以下のように実装します。

if (SystemInformation.PowerStatus.PowerLineStatus
== PowerLineStatus.Offline)
{
// バッテリーで稼働している場合の処理をここに実装
}

バッテリーの残りを調べて、残量に応じて処理を変えるには、以下のように実装します。

if (SystemInformation.PowerStatus.BatteryLifePercent < 0.2)
{
// バッテリー残量が 20% 未満の場合の処理をここに実装
}

Windows API Code Packでは、バッテリーの残量を0~100で表すのに対して、Windowsフォームではfloat型の0~1で表します。
この機能は、.NET Framework 2.0以降で実装されています。

マイクロソフト
田中達彦