这是我的代码,我想知道如何将其放入按字母顺序排列的列表中。谢谢!
Process[] proc;
void GetAllProcess()
{
proc = Process.GetProcesses();
listBox1.Items.Clear();
foreach (Process p in proc)
{
listBox1.Items.Add(p.ProcessName);
}
}
private void Form1_Load(object sender, EventArgs e)
{
GetAllProcess();
}
答案 0 :(得分:2)
LINQ使得处理事物集合变得非常容易,并且它具有OrderBy
选项。订购后,您可以再次使用LINQ到Select
每个进程名称,然后使用这些名称并使用Select
将它们插入到列表中。
proc = Process.GetProcesses()
.OrderBy(p => p.ProcessName)
.ToArray();
proc.Select(p => p.ProcessName)
.Select(listBox1.Items.Add);
答案 1 :(得分:1)
请检查一下,我已经修改了你的功能:
void GetAllProcess()
{
proc = Process.GetProcesses();
listBox1.Items.Clear();
foreach (Process p in proc.OrderBy(m=>m.ProcessName))
{
listBox1.Items.Add(p.ProcessName);
}
}