作者godsing (執著是苦)
看板C_Sharp
標題[問題] 一個很基本的問題,但我就是不知道怎樣解.....
時間Sat Apr 24 17:04:13 2010
我在寫一個列出處理程序的視窗
其中方法是
private void GetProcess()
{
int i = 0;
foreach (Process p in Process.GetProcesses())
{
//引用ListViewItem類別
ListViewItem item = new ListViewItem();
//取得Process內的屬性後,加入至ListViewItem類別
item.Text = p.ProcessName;
item.SubItems.Add(p.Id.ToString());
item.SubItems.Add((p.PrivateMemorySize64 / 1024) + " Kbyte");
item.SubItems.Add((p.VirtualMemorySize64 / 1024) + " Kbyte");
item.SubItems.Add(p.HandleCount.ToString());
item.SubItems.Add(p.BasePriority.ToString());
item.SubItems.Add(p.MainWindowTitle.ToString());
//算出程序數量
i++;
//加入控制項
listView1.Items.Add(item);
}
label1.Text = i.ToString();
}
現在我想把他寫到一個Class.cs裡面去,跟Form1分開
但是會有listVIew1 不存在的錯誤
我當然知道listView1不在Class裡面
如果我要分離它們,應該要怎麼做?
剛從主控台開始寫Form的新手請教各位鄉民
先感謝回答!!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.37.107.77
推 horngsh:可以寫一個CProcess的類別, 在你的方法中將listviewitem 04/24 17:29
推 horngsh:當參數傳進來就好了... 04/24 17:30
→ godsing:請問是用return嗎? 04/25 15:33
→ evirtues:private void GetProcess(ListView listView1) 04/25 16:23
→ evirtues:你的label1也可以用相同的方式新增參數傳入 04/25 16:24
※ 編輯: godsing 來自: 114.37.107.77 (04/25 16:52)
→ godsing:意思是我把GetProcess()改成引入listVeiw1,然後移到類別 04/25 16:54
→ godsing:然後在Form1只要有listView1 就可以使用該類別的方法了嗎 04/25 16:55
→ godsing:成功了 很感謝回覆的鄉民 !! 04/25 17:02
→ evirtues:只要是以ListView宣告的元件都可傳入 04/25 18:10