在C#中向列表框添加自定义类对象

3
我有一个类看起来像这样:

我有一个类看起来像这样

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 中实现这个功能?

3个回答

9

您应该使用ListView控件并添加两列(ListBox仅有一列)

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

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

4

列表框向用户显示单个列表项(字符串)。

因此,您可以重写ToString()方法如下:

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

如果这是为winforms应用程序,可以查看ListView控件或DataGridView。

1
你使用什么控件来显示列表?如果你使用的是ListView,那么你可以像这样做(假设instance是一个Process_Items - 顺便说一下,在我看来这是一个奇怪的类名):
listView1.Items.Add(instance.ProcessName).SubItems.Add(instance.ProcessID.ToString());

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接