2014-11-05 86 views
-1

假设我有一个ObservableCollection,它叫做ItemList,它包含10个对象。我想更新从索引5到10的每个对象的IsLocked属性。我如何使用LINQ来做到这一点?使用LINQ更新给定索引范围的对象属性

喜欢的东西

ItemList.Where(x => x.IndexOf >= 5) 

然后他们IsLocked属性更新True

回答

0

LINQ用于查询。不更新。使用循环来操作你的对象

foreach(var item in ItemList.Where((x,idx) => idx >= 5 && idx <= 10)) 
     item.IsLocked = true; 
+0

你是对的。这是查询。 – PutraKg 2014-11-05 08:41:51

0

这是可能的,但不是好的做法

ItemList.Skip(5).Take(5).ToList().ForEach(i => i.IsLocked = true);