我具有Product类(id,名称,单位,价格和Supplierid属性),在该类中,我根据产品名称实现了IComparable:
public int CompareTo(object obj)
{
Product prod = (Product)obj;
if (this.nume.CompareTo(prod.nume) < 0)
return -1;
else if (this.nume.CompareTo(prod.nume) > 0)
return 1;
else return 0;
}
我有一个listView,其中以主要形式填充了产品。在辅助表单Form2中,我有一些文本框,用于输入值以创建新产品,将其添加到产品列表,将该列表发送到Form1并在listView中显示。
我希望当我运行该应用程序时,ListView能够按名称自动排序,并且当我在添加新产品后从Form2移到Form1时,新的更新后的Listview会自动排序,包括新产品。我想使用IComparable实现此目的。但是我被困在这里:
for(int i=0;i<listView1.Items.Count-1;i++)
for(int j=i+1;j<listView1.Items.Count;j++)
{
listView1.Items[i].Name.CompareTo(listView1.Items[j].Name);
}
我将此代码放入Form1的构造函数中。但是似乎什么也没做。有任何想法吗?非常感谢