0
EDIT上午9:20 CST:看來你只需要轉換磁盤利用率與DriveInfo []
if (d.Name == drvNamefrm2)
到
if (d.Name == (string)drvNamefrm2)
好吧,我試圖寫一個小的性能監控。我已經在這裏做了研究,並通過一些步行。這可能是一個簡單解決的小問題,但我看不到它。我希望你可以看看。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Diagnostics;
using System.IO;
namespace TrafcLightPerfMeter_v1
{
public partial class diskUtilForm : Form
{
它採用兩種形式,我帶來了從在Form1下面的表格名稱,因此參數的初始選擇。
public diskUtilForm(int drvNumfrm1, string drvNamefrm1)
{
InitializeComponent();
mainForm test = new mainForm();
**object drvNumfrm2 = (object)drvNumfrm1;
object drvNamefrm2 = (object)drvNamefrm1;
DriveInfo[] allDrives = DriveInfo.GetDrives();
這是「foreach」部分。它跳過了我的「if」,即使d.Name是== drvNamefrm2 - 我不明白我做錯了什麼。
這裏的想法是「如果」他們匹配「然後」的交通燈背景將是綠色的。然後我想用這個小公式來指定其餘的顏色。我只需要它輸入if語句。
foreach (DriveInfo d in allDrives)
{
if (d.Name == drvNamefrm2)
{
labelGreen.BackColor = Color.Green;
long totalAvailable = d.AvailableFreeSpace;
long totalSpace = d.TotalSize;
double percentAvailable = Math.Round(((double)totalAvailable/(double)totalSpace)*100,4);**
}
}
}
}
}
非常感謝您的任何意見和建議。
「drvNamefrm2」的類型是什麼?這個名字暗示了一個控件,但是你正在比較一個字符串。 – 2013-02-10 15:23:21
我正在將drvNamefrm1(從我的Form1插入到Form2中) - 這只是我區分它們的一種方式。 – scottO 2013-02-10 17:08:09
沒錯。我必須去一個轉換drvNamefrm2到一個字符串。 – scottO 2013-02-10 17:08:41