안녕하세요, 저는 listbox에 3 개의 문자열 값을 가진 produkt라는 다른 클래스의 객체 값을 채우려고합니다. 목록 상자의 각 항목은 productname, 일련 번호 및 가격을 갖도록 돋보이게되며 listbox에 이미 동일한 제품 이름 또는 동일한 항목이 포함 된 항목이 포함되어있는 경우 메시지 상자가 나타나기를 원합니다. 내 문제는 내 List.Add (newProduct) 사용하려고 할 때 목록 상자에 내 목록 상자에 가서 이러한 값을 포함하는 문자열로 개체를 추가 할 수 및 그것을 인쇄하려고 할 때 Mediastore.produkt 말한다. 나는 이것을 해결하기 위해 여러 가지 방법을 시도했다. 나는 toString을 사용하여 내 객체의 값을 문자열로 만들었다. 아이디어 목록의 내용을 표시하도록 내 Listbox를 가져올 수있는 방법은 무엇입니까?Listbox에 객체 목록으로 채우기
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);
}
목록 상자에 DisplayMember 및 ValueMember를 설정 했습니까? – RezaRahmati
아니요. 나는 Lista (목록 상자)가 제품 목록임을 선언 했으므로 어떻게해야할지 모르겠다. 만약 내가 이것을 바꿀 수 없다면 (Lista.Any (produkt => produkt.Name == productname || produkt.Serialnumber == warenumber)) 작동이 멈춘다? – user3503158
아니, 잘 작동합니다 그냥 listbox.DispalyMember = "이름"및 listbox.ValueMember = "SerialNumber"설정하고 또한 다른 옵션을 가지고 toString produkt 및 반환 이름; – RezaRahmati