C#学习之多线程开发技术(四)
接着昨天的劲儿,今天继续前行~
先看看这个图片吧。
是不是和任务管理器中的某个页面有点类似呢、?
承载各个进程信息控件是 ListView。
—————————————————————下面是代码区————————————————————————-
———————————-窗口的加载函数中,也就是:Form1_Load函数中的代码:
///---设置ListView的相关属性
listView_ProcessTable.View = View.Details;
listView_ProcessTable.GridLines = true;
listView_ProcessTable.FullRowSelect = true;
#region 这里是在添加列头,我更喜欢这样的做法,通过写代码来实现添加。
//Add column header
listView_ProcessTable.Columns.Add("进程名", 120);
listView_ProcessTable.Columns.Add("进程ID", 120);
listView_ProcessTable.Columns.Add("内存使用", 120);
#endregion
///---获取进程信息
GetProcess();
这里,这定义了一个函数, GetProcess(),代码如下:
///----获取本低地计算机的进程
Process[] proList = Process.GetProcesses(".");
///---计算当前进程数目
label_processCount.Text += proList.Length.ToString();
///---向listview中添加信息
foreach (Process p in proList)
{
ListViewItem lvi = new ListViewItem();
lvi.Text = p.ProcessName;
///----将指定集合的元素添加到 List<T> 的末尾。
lvi.SubItems.AddRange(new string []{p.Id.ToString(), p.PrivateMemorySize64.ToString()});
///---listview中添加进程信息
listView_ProcessTable.Items.Add(lvi);
}
-—————————————————-这里是启动按钮事件的代码
if (string.Empty !=label_processCount.Text)
{
///---启动一个进程
Process.Start(textBox_inputProcessName.Text);
}
else
{
label_processCount.Focus();
}
-————————————————-这里是关闭按钮事件代码
if (listView_ProcessTable.SelectedItems.Count > 0)
{
string proName = listView_ProcessTable.SelectedItems[0].Text;
///---根据进程名获取指定的进程
Process[] p = Process.GetProcesses(proName);
///---杀死进程
p[0].Kill();
}
else
{
MessageBox.Show("请选择要终止的进程");
}
其实,今天的代码主要是结合了 获取进程信息 和 ListView 控件的 使用。其他的没什么亮点 啦
还没有评论,来说两句吧...