簡體   English   中英

在c#中向列表框添加自定義類對象

[英]Adding custom class objects to listbox in 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和2nd必須具有processID。 我怎樣才能在C#2.0中實現這一目標?

您應該使用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());
}

列表框具有向用戶顯示的單個ListItem(字符串)。

所以你可以覆蓋ToString()as

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

如果這是針對winforms應用程序,請查看ListView控件或DataGridView

你對列表使用什么樣的控制? 如果您使用ListView,那么您可以這樣做(假設該實例是Process_Items - 其中btw是類IMO的一個奇怪的名稱 - 實例):

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM