[英]Formatting a string for a listbox in C#
首先,我說列表框是類項目的要求。 我只是想通過在將字符串添加到列表框之前格式化字符串來使其變得更好看。 我有一個Product.ToString()
重寫來格式化字符串,但是當我將其添加到列表框中時,格式化消失了。
Product
類中的ToString
方法:
public override string ToString()
{
string newFormat = string.Format("{0,0}{1,20}", Name, Price);
return newFormat;
}
更新方法:
protected void updateLists()
{
availableProducts_LB.Items.Clear();
foreach (Product p in customer.AvailableProducts)
availableProducts_LB.Items.Add(p.ToString());
shoppingCart_LB.Items.Clear();
foreach (Product p in customer.shoppingCartList)
shoppingCart_LB.Items.Add(p.ToString());
}
只需將您的Product實例直接添加到ListBox中(不要調用ToString):
availableProducts_LB.Items.Clear();
foreach (Product p in customer.AvailableProducts)
availableProducts_LB.Items.Add(p);
ListBox將使用Product.ToString方法顯示列表中的項目。
然后在ToString的return語句上放置一個斷點,以確保它是您期望的值。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.