Re[9]: Как получить обратный for each?
От: Аноним  
Дата: 12.09.06 08:59
Оценка:
Здравствуйте, GlebZ, Вы писали:

GZ>Примеры использования энумератора.

GZ>
GZ>public class Helper
GZ>{
GZ>    //Для прохода через step
GZ>  public static IEnumerable<T> GetEnumeratorWithStep(IList list, int step)
GZ>    {
GZ>            for (int i=0;i<list.Count;i+=step)
GZ>                yield return list[i];
GZ>    }
GZ>    //Для прохода в обратном порядке.
GZ>    public static IEnumerable<T> Reverse(IList list)
GZ>    {
GZ>        for (int i=list.Count-1;i>=0;i--)
GZ>            yield return list[i];
GZ>    }
GZ>}
GZ>


GZ>public class Helper

GZ>{
GZ> public static void ForEach(IEnumerable<T> enumer, Action<T> action)
GZ> {
GZ> foreach(T t in enumer)
GZ> action(t)
GZ> }
GZ>}
GZ>//использование для задачи с гридом
GZ>Helper.ForEach<DataGridViewRow>(Helper.GetEnumeratorWithStep<DataGridViewRow>(myGrid.Rows, 2), delegate(DataGridRow i){row.Color=Color.Green;});
GZ>[/c#]

Кошмар!
И внутри каждого всёравно тот же for...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.