C# 用于自定义列表的indexof函数
我需要更新我创建的自定义列表中的一个条目,列表如下所示:C# 用于自定义列表的indexof函数,c#,list,windows-phone-7,C#,List,Windows Phone 7,我需要更新我创建的自定义列表中的一个条目,列表如下所示: List Test=newlist() 我在网上找到了一些建议的解决方案,例如使用FindIndex,但该功能不存在。 注意:如果这有帮助的话,我正在windows phone 7开发中使用C#。 感谢列表有一个方法,这在Windows Phone 7版本中提供。直接使用IndexOf()方法 如果您不想通过索引,而是通过类中的某个字段来查找对象,您可以这样做。我假设你的数据对象里面有一个唯一的ID字段 var someName = "n
List Test=newlist()代码>
我在网上找到了一些建议的解决方案,例如使用FindIndex,但该功能不存在。
注意:如果这有帮助的话,我正在windows phone 7开发中使用C#。
感谢列表有一个方法,这在Windows Phone 7版本中提供。直接使用IndexOf()
方法 如果您不想通过索引,而是通过类中的某个字段来查找对象,您可以这样做。我假设你的数据对象里面有一个唯一的ID字段
var someName = "name_i_want_to_find";
var myItems = Test.FindAll(x => x.Name == someName);
foreach (var item in myItems)
item.FieldToChange = "someNewValue";
因此,如果我需要根据列表中的name变量在列表中定位该条目,那么应该如何使用indexof函数?为了清楚起见,我需要更新此列表中的一个条目,因此我首先通过查找索引来定位此条目,然后通过以下方式进行更新:Test[index]=XXXXX
我理解您的答案,但这样我将所需元素保存在一个新变量var myItems
中,然后更新副本。我想更新现有列表本身,这就是为什么我需要获取索引,还是我错了??我知道在foreach中没有复制,但我指的是这行代码:var myItems=Test.FindAll(x=>x.Name==someName)在这个例子中,我们在一个新变量中得到结果,对吗?因此,在foreach中,我正在更新myItems变量nottest