public struct PLU
{
public int ID { get; set; }
public string name { get; set; }
public double price { get; set; }
public int quantity {get;set;}
}
public static ObservableCollection<PLU> PLUList = new ObservableCollection<PLU>();
我有上面的
ObservableCollection
。现在,我想在ID
中搜索PLUList
并获取其索引,如下所示:int index = PLUList.indexOf();
if (index > -1)
{
// Do something here
}
else
{
// Do sth else here..
}
快速解决方法是什么?
编辑:
假设某些项目已添加到
PLUList
中,而我想添加另一个新项目。但是在添加之前,我想检查列表中是否已经存在ID
。如果可以,那么我想将+1添加到quantity
。 最佳答案
使用LINQ :-)
var q = PLUList.Where(X => X.ID == 13).FirstOrDefault();
if(q != null)
{
// do stuff
}
else
{
// do other stuff
}
如果要保留它的结构,请使用它:
var q = PLUList.IndexOf( PLUList.Where(X => X.ID == 13).FirstOrDefault() );
if(q > -1)
{
// do stuff
}
else
{
// do other stuff
}
关于c# - 如何在Observable Collection中搜索项目并获取其索引,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9328575/