使用对象列表填充列表框

本文关键字:列表 填充 对象 | 更新日期: 2023-09-27 17:56:49

嗨,我试图用另一个名为 produkt 的类的对象的值填充我的列表框,该类具有 3 个字符串值。列表框中的每个项目都应该有产品名称、序列号和价格,如果列表框中已经包含一个具有相同产品名称或商品编号的项目,我希望弹出一个消息框。我的问题是,当我尝试使用我的List.Add(newProduct)将对象作为包含这些值的字符串添加到我的列表框中时,它会转到我的列表框,当我尝试打印它时,它说Mediastore.produkt。我已经尝试了许多不同的方法来解决这个问题,我用 toString 尝试将我的对象的值变成一个字符串。任何想法如何让我的列表框显示列表的内容?

public void NewProdct_Click(object sender, EventArgs e)        
{
    string productname;
    string warenumber;
    string Price_;
    productname = ProdNamn.Text;
    warenumber = Varu_Nr.Text;
    Price_ = pris_.Text;
    List<produkt> List = new List<produkt>();
    if(List.Any( produkt => produkt.Name == productname || produkt.Serialnumber == warenumber)) 
    {
        MessageBox.Show("Product with that name or warenumber");
        return;
    }
    var newProdukt = new produkt()
    {
        Name = productname,
        Serialnumber = warenumber,
        price = Price_
    };
    string random;
    random = newProdukt.Name + newProdukt.price + newProdukt.Serialnumber ;
    List.Add(newProdukt);
    Console.WriteLine(newProdukt);
}

使用对象列表填充列表框

您可以将产品列表定义为 ListBox 的数据源,并将 DisplayMember 设置为一个字段。

或者,您可以将 ToString() 方法添加到您的产品类中。然后,这将用于在列表框中显示产品。