2011-05-15 152 views
3

我正在寻找一个Visual Studio的控件,可以显示当前的Windows移动设备的电池寿命。有没有人遇到过这个?gui控制,显示当前电池电量窗口移动C#

你知道我们是否可以自己创建这样的控制?如果是这样,怎么样?

+1

既然你提到C#,你的意思是Windows Phone 7而不是Windows Mobile? – pickypg 2011-05-15 06:47:51

+0

不会进度条吗?或者你正在寻找控制,这将获得电池状态本身? – torvin 2011-05-15 06:55:41

+0

有一个API来获取batterylevel(s),所以很容易DIY。只是不要指望它是非常准确的。 – 2011-05-15 07:10:31

回答

1

创建5个电池图标:

  1. 电池充满
  2. 电池高
  3. 电池中
  4. 电池电量低
  5. 电池电量很低使用Microsoft.WindowsMo​​bile.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; 
}