2009-04-27 82 views
2

列表框我有一个类看起来像这样添加自定义类对象在C#

public class Process_Items 
{ 
    String Process_Name; 
    int Process_ID; 
    //String Process_Title; 
    public string ProcessName 
    { 
     get { return Process_Name; } 
     set { this.Process_Name = value; } 
    } 
    public int ProcessID 
    { 
     get { return Process_ID; } 
     set { this.Process_ID = value; } 
    } 
} 

现在我想创建一个Process_Items []数组,并显示在一个多列列表框的所有元素。这样第一列必须有processName,第二列必须有processID。我如何在C#2.0中实现这一点?

+0

WinForms,ASP.NET或WPF? – 2009-04-27 16:04:57

回答

8

您应该使用ListView控件和添加两列(列表框只有一列)

Process_Items[] items = new Process_Items[] // Initialize array 

foreach(Process_Items p in items) { 
    listView.Items.Add(p.ProcessName).Subitems.Add(p.ProcessID.ToString()); 
} 
2

列表框有一个ListItem(字符串)显示给用户。

所以,你可以重写的ToString()作为

public override string ToString() 
{ 
    return string.Format("{0} [ProcID: {1}]", this.Process_Name , this.ProcessID); 
} 

如果这是一个WinForms应用程序,看看ListView控件或一个DataGridView

1

你用什么样的控制为清单?如果你使用一个ListView,那么你可以这样做(假设实例是Process_Items - 这BTW是一类IMO一个陌生的名字 - 实例):

listView1.Items.Add(instance.ProcessName).SubItems.Add(instance.ProcessID.ToString());