графический интерфейс, который показывает текущий уровень заряда батареи Windows Mobile C # - PullRequest
3 голосов
/ 15 мая 2011

Я ищу элемент управления для Visual Studio, который может отображать текущее время автономной работы устройства Windows Mobile. Кто-нибудь сталкивался с этим раньше?

Вы знаете, можем ли мы создать такой контроль самостоятельно? Если да, то как?

1 Ответ

1 голос
/ 16 мая 2011

Создание 5 значков батареи:

  1. Батарея заряжена
  2. Батарея разряжена
  3. Батарея заряжена
  4. Батарея разряжена
  5. БатареяОчень низкий

с использованием Microsoft.WindowsMobile.Status;

private void UpdateBatteryIcon()
{
    var batteryLevel = SystemState.PowerBatteryStrength;
    var isOnCharge = IsOnCharge(SystemState.PowerBatteryState);
    pictBattery.Image = GetBatteryIcon(batteryLevel, isOnCharge);
}
private static Bitmap GetBatteryIcon(BatteryLevel batteryState, bool isCharging)
{
    if (isCharging)
    {
        return Icons.BatteryChargingHorizontal;
    }
    if (batteryState == BatteryLevel.VeryLow)
    {
        return Icons.BatteryVeryLowHorizontal;
    }
    if (batteryState == BatteryLevel.Low)
    {
        return Icons.BatteryLowHorizontal;
    }
    if (batteryState == BatteryLevel.Medium)
    {
        return Icons.BatteryMediumHorizontal;
    }
    if (batteryState == BatteryLevel.High)
    {
        return Icons.BatteryHighHorizontal;
    }
    return Icons.BatteryFullHorizontal;
}
...