如何在ObservableCollection上執行foreach
lambda表達式< T>?如何在ObservableCollection <T>上執行foreach lambda表達式?
有沒有方法foreach
與ObservableCollection < T>雖然此方法與列表< T>存在。
有沒有可用的擴展方法?
如何在ObservableCollection上執行foreach
lambda表達式< T>?如何在ObservableCollection <T>上執行foreach lambda表達式?
有沒有方法foreach
與ObservableCollection < T>雖然此方法與列表< T>存在。
有沒有可用的擴展方法?
有一個在BCL默認提供任何方法,但它是直截了當地寫一個具有相同的行爲(檢查略去了參數)
public static void ForEach<T>(this IEnumerable<T> enumerable, Action<T> action) {
foreach (var cur in enumerable) {
action(cur);
}
}
使用情況下的擴展方法
ObservableCollection<Student> col = ...;
col.ForEach(x => Console.WriteLine(x.Name));
public static class EnumerableExtensions
{
public static void ForEach<T>(this IEnumerable<T> enumerable, Action<T> action)
{
foreach (var e in enumerable)
{
action(e);
}
}
}
observableCollection.ToList().ForEach(item => /* do something */);
感謝您的快速回復,這很好。 但我想知道一個謂詞如何作爲一個動作工作? predicated:x => Console.WriteLine(x.Name) – 2010-03-25 21:17:41
早些時候我正在使用像這樣, statuses.ToList()。ForEach(x => x.IsHidden = true); 我認爲這只是內存消耗。 – 2010-03-25 21:20:31