Я создаю приложение winform, используя perfmon. Я узнал, что состояние батареи не будет работать, потому что его часть управления окнами. Поэтому я решил пойти по маршруту wmi.Состояние батареи в winforms
Так что мой вопрос, когда я ставлю статус батареи в метке, как показано ниже:
private void BatteryStatus()
{
System.Management.ManagementClass wmi = new System.Management.ManagementClass("Win32_Battery");
var allBatteries = wmi.GetInstances();
foreach (var battery in allBatteries)
{
int estimatedChargeRemaining = Convert.ToInt32(battery["EstimatedChargeRemaining"]);
if (estimatedChargeRemaining == 100)
{
label13.Text = "Remaining:" + " " + estimatedChargeRemaining + " " + "%";
}
}
}
Заряд остальные показано прекрасно. Мой вопрос заключается в том, есть ли способ, которым у меня может быть только один if statement
, чтобы назвать состояние батареи от 100 до 1
или как я это сделаю, мне нужно сделать еще 99 if statements
?
Это часть моего монитора производительности. Я настраиваю здание. Было бы легче, если бы perfmon позволил счетчику. Это единственный способ, которым я могу думать, чтобы получить статистику батареи, такие как:
Charge Rate
Discharge Rate
Remaining Capacity
Voltage
Я всегда делал if statements
с метками о состоянии батареи. Прежде чем я пойду на выполнение еще 993 if statements
Я хочу быть уверенным, что нет более простого способа?
*********** Обновление ************ Я понял. Спасибо за помощь тем, кто помог.
Почему вы думаете, что вам нужно, и если ? – Steve
Я всегда использовал 'if statements' на ярлыках. Мне никогда не показывали другого пути, и большинство примеров, которые я исследовал, делает это с 'if statements', и за последние 5 лет я сделал это таким образом. Мне интересно, есть ли более простой способ. – campnerd
В действительности нет причин для выражения 'if', здесь ... если вы не вызываете« BatteryStatus »при определенных обстоятельствах (что я даже не понимаю). – gravity