C# 磁盘利用率与DriveInfo[]
编辑上午9:20 CST:似乎您只需转换C# 磁盘利用率与DriveInfo[],c#,C#,编辑上午9:20 CST:似乎您只需转换 if (d.Name == drvNamefrm2) if (d.Name == drvNamefrm2) 到 if (d.Name == (string)drvNamefrm2) 好的,我正在尝试编写一个小型性能监视器。我在这里做了研究,并通过一些步行方式进行了工作。这可能是一个容易解决的小问题,但我看不出来。我希望你能看看 using System; using System.Collections.Generic; using
if (d.Name == drvNamefrm2)
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
{
它使用两种形式,我将从形式1中引入初始选择,因此在下面的形式名称中包含参数
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=to 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);**
}
}
}
}
}
提前感谢您的任何输入。看来您只需转换即可
if (d.Name == drvNamefrm2)
if (d.Name == drvNamefrm2)
到
--这个公式现在似乎也在起作用。因此,稍后我可以在“红绿灯”上进行比较和颜色更改。drvNamefrm2的类型是什么?名称表示一个控件,但您将其作为字符串进行比较。我将drvNamefrm1(从我的Form1引入我的Form2)——这只是我区分它们的一种方式。对。我必须将drvNamefrm2转换为字符串。