Ejemplo n.º 1
0
 private void resetFg_Click(object sender, RoutedEventArgs e)
 {
     if (isEnergyManagerConnected)
     {
         ForegroundEnergyDiagnostics.ResetTotalEnergyUsage();
         ShowEnergyUsage();
     }
 }
Ejemplo n.º 2
0
        async private void ShowEnergyUsage()
        {
            if (isEnergyManagerConnected)
            {
                try
                {
                    uint  usageFG = ForegroundEnergyManager.RecentEnergyUsage;
                    uint  levelFG = ForegroundEnergyManager.RecentEnergyUsageLevel;
                    ulong totalFG = ForegroundEnergyDiagnostics.ComputeTotalEnergyUsage();
                    Debug.WriteLine("usage={0}, level={1}, total={2}", usageFG, levelFG, totalFG);

                    string level = "Undefined";
                    if (isBatteryPresent)
                    {
                        if (levelFG == ForegroundEnergyManager.ExcessiveUsageLevel)
                        {
                            level = "Excessive";
                        }
                        else if (levelFG == ForegroundEnergyManager.MaxAcceptableUsageLevel)
                        {
                            level = "MaxAcceptable";
                        }
                        else if (levelFG == ForegroundEnergyManager.NearMaxAcceptableUsageLevel)
                        {
                            level = "NearMaxAcceptable";
                        }
                        else if (levelFG == ForegroundEnergyManager.LowUsageLevel)
                        {
                            level = "Low";
                        }
                    }

                    await Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () =>
                    {
                        fgUsage.Text = string.Format(CultureInfo.CurrentCulture, "{0}%", usageFG);
                        fgLevel.Text = level;
                        fgTotal.Text = string.Format(CultureInfo.CurrentCulture, "{0}%", totalFG);
                    });
                }
                catch (Exception ex)
                {
                    status.Log("ShowEnergyUsage: " + ex.Message);
                }
            }
        }